Jikes RVM: Difference between revisions
→External links: Sourceforge |
Gillson254 (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
{{db-hm|Jikes RVM}} |
|||
{{ Infobox Software |
{{ Infobox Software |
||
| name = Jikes RVM |
| name = Jikes RVM |
Revision as of 15:22, 17 October 2009
It is requested that the page history of Jikes RVM be merged into the history of this page. This action must be performed by an administrator (compare pages).
Consider placing Administrators: Before merging the page histories, read the instructions at Wikipedia:How to fix cut-and-paste moves carefully. An incorrect history merge is very difficult to undo. Also check Wikipedia:Requests for history merge for possible explanation of complex cases. |
Developer(s) | Jikes RVM Project Organization |
---|---|
Stable release | 3.1.0
/ June 10, 2009 |
Repository | |
Written in | Java |
Operating system | Unix-like |
Type | Java Virtual Machine and Java Library |
License | Eclipse Public License |
Website | http://jikesrvm.org/ |
Jikes RVM (Jikes Research Virtual Machine) is a mature open source virtual machine that runs Java programs. Unlike most other JVMs it is written in Java, a style of implementation known as meta-circular.
History
- Nov, 1997, the Jalapeno project starts as an internal research project at IBM's Thomas J. Watson Research Center.
- 1999, 2000, research papers describing novel aspects of Jikes RVM are published by IBM researchers and several universities are given access to the source code.
- Oct, 2001, Jikes RVM version 2 is released as an open source project under the Common Public License. The release supports PowerPC and Intel architectures and a range of different garbage collection algorithms.
- 2002, Jikes RVM 2.2 is released with the precise garbage collectors now refactored into the popular Memory Management Toolkit precise garbage collectors.
- 2004, Jikes RVM 2.4 is released with increased stability and performance partly, particular focus was made of running eclipse.
- 2007, Jikes RVM 2.9 development starts with the code base extensively refactored to use features of Java 5.0 and to use an ant build system.
- 2008, Jikes RVM 3.0 released marking the end of 2.9 development and new stability in the code base.
- 2009, Jikes RVM 3.1 released under the Eclipse Public License (EPL) with significantly improves over the performance of 3.0.1 and switching to native threading.
Bootstrap
Being meta-circular Jikes RVM requires a bootstrap JVM to run upon to create a boot image. The boot image is a view of the objects Jikes RVM requires to boot created using reflection in the bootstrap JVM. A small C loader is responsible for loading the boot image at runtime.
VM Magic
VM Magic is where the compiler generates different code for a class than the bytecodes within that class should perform. VM Magic classes allow direct access to memory and are key to the Memory Management Toolkits performance. The VM Magic classes reside in the org.vmmagic package and have been reused in other Java projects.
Memory Management Toolkit
The Memory Management Toolkit (MMTk) is a collection of precise garbage collectors that have been used within Jikes RVM and other projects such as the singularity operating system and the Rotor software project. As with the rest of the Jikes RVM the implementation is in Java, but the main dependence is on VM Magic.
Class Libraries
Either Apache Harmony or GNU Classpath class libraries can be used with Jikes RVM, with experimental support for OpenJDK's class library.
Compilers
Jikes RVM uses a fast baseline compiler to quickly generate code for a particular architecture. Adaptive compilation then recompiles code with an optimizing compiler with features such as on stack replacement. The adaptive compilation system uses a cost-benefit analysis model.
Runtime
Jikes RVM's runtime has many innovative features including mechanisms for fast locking, a collaborative scheduling mechanism and support for fast exception gathering and dispatch.
Research
Since it is a research project, the emphasis of JikesRVM is on researching new technologies, as is apparent from the scientific publications it has spawned (over 190 papers as of 2008).[1]
Jikes RVM has also appeared in the Google Summer of Code 2007 and 2008.
See also
References
The Jikes Research Virtual Machine project: Building an open-source research community, IBM Systems Journal, Vol 44, No 2, 2005. http://www.research.ibm.com/journal/sj/442/alpern.pdf