|Ian Rogers||Aug 7, 2008 8:20 am|
|Aleksey Shipilev||Aug 7, 2008 9:43 am|
|Ian Rogers||Aug 7, 2008 11:32 am|
|Aleksey Shipilev||Aug 7, 2008 2:31 pm|
|Aleksey Shipilev||Aug 7, 2008 3:27 pm|
|Sean Qiu||Aug 7, 2008 6:36 pm|
|Aleksey Shipilev||Aug 8, 2008 4:34 am|
|Mark Hindess||Aug 8, 2008 7:21 am|
|Xiao-Feng Li||Aug 11, 2008 2:01 am|
|Subject:||Announcing Jikes RVM 3.0 + Apache Harmony!|
|From:||Ian Rogers (roge...@gmail.com)|
|Date:||Aug 7, 2008 8:20:42 am|
Announcing Jikes RVM 3.0 + Apache Harmony! We are pleased to announce the release of Jikes RVM 3.0, an open-source meta-circular JVM written in Java. A new feature of the release is initial support for Apache Harmony's class library. What is Jikes RVM? Jikes RVM is a research virtual machine capable of running the latest Java programs. Writing a JVM in Java has many advantages including access to libraries such as* java.util.concurrent*, the use of IDEs like Eclipse and the use of annotations to extend the language and virtual machine. Jikes RVM is now over 10 years old and has been used in more than 190 refereed research papers. Support for Apache Harmony Jikes RVM is built using Apache Ant, getting the build to compile and use Apache Harmony's class library is as simple as defining the *classlib.provider* property to be *Harmony*. For example, to download and build Jikes RVM with Apache Harmony:
1. download the Jikes RVM from http://sourceforge.net/project/showfiles.php?group_id=128805 2. extract the files 3. build Jikes RVM using Apache Ant and specifying what kind of Jikes RVM configuration you would like and what kind of host you have. The prototype configuration is recommended at the moment. To test the performance of the optimizing compiler use a production build but this may have problems - see features of the build below. To build on x86_64 linux, for example, run: *ant -Dconfig.name=prototype -Dhost.name=x86_64-linux -Dclasslib.provider=Harmony* 4. following the build the executable will be placed in the *dist*directory, for example the previous build will put the RVM in *dist/protoype_x86_64-linux*.
The build process will take Apache Harmony's class library from SVN, build it and then build the Jikes RVM using it. Once built the Harmony libraries won't be rebuilt and a typical prototype build will complete in under 2 minutes. We need you help! We hope you will try out Jikes RVM 3.0 with Apache Harmony. There are many known and unknown problems and potential improvements, please help us to find what these are, which of these are priorities and also please feel free to send us your patches! The Jikes RVM is licensed under the CPL (the predecessor of the EPL). Apache Harmony can also help us, for example, by providing a separately packaged version of the class library so that we don't need to take it from SVN.
The following URLs explain more:
1. the Jikes RVM web site: http://jikesrvm.org/ (you can find in here how to develop Jikes RVM using IDEs like Eclipse) 2. the Jikes RVM JIRA bug and feature tracking system: http://jira.codehaus.org/browse/RVM (a category of which is bugs and features relating to Apache Harmony class library support) <http://goog_1218120927426/>
<http://goog_1218120927426/>Some features of the build The Jikes RVM provides an optimizing compiler, an adaptive optimization system and on-stack replacement. When being built on a bootstrap JVM it can use the optimizing compiler, a feature of which is to follow references of final fields. There is the possibility of confusion as the boot strap JVM's class library and Apache Harmony's class library may not match, there are various fixes to deal with this, but an alternative is to use the baseline compiler (as in the prototype build).
The Jikes RVM version of the Harmony kernel classes are provided in the * libraryInterface* directory. Code in this directory may be licensed under different licenses than the CPL.
Jikes RVM comes with the MMTk garbage collectors and the VM magic classes may already be familiar to Apache Harmony developers. Testing your build The Jikes RVM performs Continuous Autonomous Testing, the results of which are tracked here: http://jikesrvm.anu.edu.au/cattrack/
The scripts that test Jikes RVM are part of the distribution. For example, to build and test Jikes RVM 3.0 with SPEC JVM 2008 run:
ant -f test.xml -Dconfig.name=prototype -Dhost.name=x86_64-linux -Dclasslib.provider=Harmony -Dtest-run.name=SPECjvm2008
This will automatically download and install the benchmark in the Jikes RVM distribution before building and testing Jikes RVM 3.0 with it. Acknowledgments In getting Jikes RVM and Apache Harmony working together we were lucky to receive support and help from Tim Ellison and Mark Hindess. Thanks Thank you for your interest in this milestone in Jikes RVM's development and we look forward to your help in finding bugs and improving Jikes RVM!