Comparison of Java virtual machines
Version information
| Name | Creator | First public release | Latest stable version | Latest release date | Cost, availability | License |
|---|---|---|---|---|---|---|
| Eclipse OpenJ9 (formerly IBM J9) | IBM | ? | 0.8.0 | 15 March 2018[1] | Free | Apache License 2.0 Eclipse Public License 2.0 |
| GCJ | GNU | 6 September 1998 | 6.4 (Terminal) | 4 July 2017 | Free | GPL version 2 or later, with the "libgcc exception"[2] |
| HotSpot, OpenJDK edition | Sun Microsystems, Oracle | 27 April 1999 | ? | 21 September 2017 | Free | GPL version 2 only |
| HotSpot, Oracle JDK edition | Sun Microsystems, Oracle | 27 April 1999 | ? | September 2017 | Free | Proprietary |
| HotSpot, Java SE embedded edition | Sun Microsystems, Oracle | 27 April 1999 | ? | ? | Commercial | Proprietary[3] |
| HotSpot, Zero port | Gary Benson[4] | ? | ? | ? | Free | GPL version 2 only |
| IKVM.NET | Jeroen Frijters | 28 June 2004 | 7.0.4335.0 | 5 December 2011 | Free | zlib License[5] |
| JAmiga | Peter Werno, Joakim Nordström | 19 May 2005[6] | 1.2 | 6 January 2014 | Free | GPL version 2 or later |
| JamVM | Robert Lougher | 13 March 2003 | 2.0.0 | 30 July 2014 | Free | GPL version 2 or later |
| Jato VM | Pekka Enberg and contributors[7] | ? | 0.3[8] | 4 January 2012[8] | Free | GPL version 2 only[7] |
| JC virtual machine | Archie L. Cobbs | ? | 1.4.7 | 13 November 2005 | Free | LGPL version 2.1 or later |
| Jikes RVM | IBM | 14 October 2001 | 3.1.4[9] | 18 February 2016[9] | Free | Eclipse Public License version 1.0[10] |
| Kaffe | Transvirtual Technologies | 1996 | 1.1.9 | 22 February 2008 | Free | GPL version 2 or later[11] |
| Mysaifu JVM | ? | 16 April 2005[12] | 0.4.8[12] | 5 March 2010[12] | Free | GPL version 2 only[12] |
| SableVM | Sable Research Group | ? | 1.13 | 30 March 2007[13] | Free | LGPL version 2.1 or later |
Technical information
| JVM | Status | Latest supported Java version | Supported class libraries | Performance | ||||
|---|---|---|---|---|---|---|---|---|
| GNU Classpath | OpenJDK | Other | Interpretation | AOT | JIT | |||
| GCJ | No longer maintained or distributed by GNU as of GCC 7 [14] | ? | Yes | No | Yes | Yes | No | |
| HotSpot, OpenJDK edition | Reference implementation. | 1.8 | No | Yes | Yes | No | Yes | |
| HotSpot, Oracle JDK edition | Reference implementation. | 1.8 | No | Yes | Yes | No | Yes | |
| HotSpot, Java SE embedded edition | ? | No | Yes | Yes | No | Yes | ||
| HotSpot, Zero port | Interpreter-only port of OpenJDK using almost no assembly language and designed to be very portable. | 1.7 | No | Yes | Yes | No | No | |
| IKVM.NET | ? | ? | ? | Whatever the .NET runtime uses | ||||
| JAmiga | 1.4[15] | Yes[16] | No | Yes[17] | No | No | ||
| JamVM | 1.8[18] | Yes[19] | Yes[19] | Yes[19] | No | Yes[19] | ||
| Jato VM | 1.6[20] | Yes[8] | No[21] | No[21] | No[21] | Yes[8] | ||
| JC virtual machine | Translates Java to C and compiles it with a C compiler. | 1.4[22] | Yes[23] | No | Yes[24] | Yes[24] | Yes[24] | |
| Jikes RVM | 1.6[25] | Yes[26] | Port[27][28] | Apache Harmony[26] | No[29] | ? | Yes | |
| Kaffe | 1.4[11] | Yes[11] | No | Yes[11] | No[11] | Yes[11] | ||
| Mysaifu JVM | ? | Yes[30] | No | Yes[31] | No[31] | No[31] | ||
| SableVM | Unmaintained | 1.4 | Yes | No | Yes | No | No | |
Supported CPU architectures
| JVM | x86 | x86-64 | SPARC | MIPS | Itanium | Power ISA | ARM | Alpha | S/390 | z/Architecture | m68k |
|---|---|---|---|---|---|---|---|---|---|---|---|
| GCJ | Yes[32] | Yes[32] | Yes[32] | Yes[32] | Yes[32] | Yes[32] | Yes[32] | Yes[32] | Yes[32] | No[32] | No[32] |
| HotSpot, OpenJDK edition | Yes[33] | Yes[33] | Solaris only[33] | Port[34][35] | No[33] | PowerPC/AIX port[36] | Yes[33] | No[33] | No[33] | No[33] | No[33] |
| HotSpot, Oracle JDK edition | Yes[33] | Yes[33] | Solaris only[33] | No[33] | Java 1.6[37] | No[33] | Yes[33] | No[33] | No[33] | No[33] | No[33] |
| HotSpot, Java SE embedded edition | Yes[3] | Yes[3] | Yes[3] | ? | ? | Yes[3] | Yes[3] | ? | ? | ? | ? |
| HotSpot, Zero port | Yes[38] | Yes[38] | No[38] | Yes[38] | Yes[38] | Yes[38] | Yes[38] | Yes[38] | No[38] | Yes[38] | No[38] |
| IKVM.NET | Any architecture with a .NET framework. | ||||||||||
| JAmiga | ? | ? | No | No | No | Yes | No | No | No | No | Yes |
| JamVM | Yes[19] | Yes[19] | Yes[19] | Yes[19] | No[19] | Yes[19] | Yes[19] | No[19] | No[19] | No[19] | No[19] |
| Jato VM | Yes[8] | Under development[39] | No | No | No | Under development[39] | Preliminary ARMv5 support[21] | No | No | No | No |
| JC virtual machine | Yes | No | No | No | No | No | No | No | No | No | No |
| Jikes RVM | Yes[40] | No[40] | No[40] | No[40] | No[40] | Yes[40] | No[40] | No[40] | No[40] | No[40] | No[40] |
| Kaffe | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No[11] | Yes[11] |
| Mysaifu JVM | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | Yes[41] | No[41] | No[41] | No[41] | No[41] |
| SableVM | Yes[42] | Yes | Yes[42] | Yes | Yes[42] | Yes[42] | Yes[42] | Yes[42] | Yes[42] | No[42] | Yes[42] |
Supported operating systems
| JVM | Windows | Linux | FreeBSD | NetBSD | OpenBSD | Solaris | OpenSolaris | Darwin | macOS | iOS | BeOS | Haiku | AIX | IRIX | OS/2 | Windows Mobile | AmigaOS | Other |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GCJ | Yes[32] | Yes[32] | Yes[32] | ? | ? | Yes[32] | ? | Yes[32] | Yes[32] | ? | ? | ? | ? | Yes[32] | ? | No[32] | No[32] | DEC OSF 4.0f and 5.1, Hitachi SH-3/4 micro-controller[32] |
| HotSpot, OpenJDK edition | Yes[43] (distributed as source code) | Yes | Port[44] | Port[44] | Port[44] | Yes | Yes[45] | ? | Yes[46] | No | No | Port[47] | Port[36] | No | Port[48] | No | No | |
| HotSpot, Oracle JDK edition | Yes[33] | Yes[33] | No | No | No | Yes[33] | ? | ? | Yes[33] | No | No | No | No | No | No | No | No | |
| HotSpot, Java SE embedded edition | Yes[3] | Yes[3] | No[3] | No[3] | No[3] | Yes[3] | ?[3] | No[3] | No[3] | No[3] | No[3] | No[3] | No[3] | No[3] | No[3] | No[3] | No[3] | |
| HotSpot, Zero port | No[38][49] | Yes[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | No[38][49] | |
| IKVM.NET | Any operating system with a .NET framework | |||||||||||||||||
| JAmiga | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | |
| JamVM | No[19] | Yes[19] | Yes[19] | No[19] | Yes[19] | Yes[19] | Yes[19] | Yes[19] | Yes[19] | On Jailbroken iPhone[19] | No[19] | No[19] | No[19] | No[19] | No[19] | No[19] | No[19] | kFreeBSD |
| Jato VM | No[39] | Yes[39] | No[39] | No[39] | No[39] | No[39] | No[39] | Under development[39] | ?[39] | No[39] | No[39] | No[39] | No[39] | No[39] | No[39] | No[39] | No[39] | |
| JC virtual machine | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | |
| Jikes RVM | No[40] | Yes[40] | No[40] | No[40] | No[40] | No[40] | No[40] | No[40] | Yes[40] | No[40] | No[40] | No[40] | Yes[40] | No[40] | No[40] | No[40] | No[40] | |
| Kaffe | Using Cygwin[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | ? | Yes[11] | Yes[11] | No[11] | Yes[11] | No[11] | Yes[11] | Yes[11] | No[11] | No[11] | Yes | Many others[11] |
| Mysaifu JVM | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | No[41] | Yes[41] | No[41] | |
| SableVM | Using Cygwin[42] | Yes[42] | Yes[42] | ? | ? | ? | ? | ? | Yes[42] | ? | ? | ? | ? | ? | ? | ? | ? | |
gollark: Effective and sane governance/decision making (and resource allocation, which is similar).
gollark: I just said.
gollark: We've seen that governments are often not very effective or competent.
gollark: I think there are significantly larger issues than climate change going on anyway. Such as, how do you make governance actually work well? If you can solve that many of the other things follow.
gollark: I mean, if it's profitable it would happen, but it doesn't seem to be since renewables are pushed harder and there's tons of bad nuclear regulation.
References
- "Latest build | AdoptOpenJDK". adoptopenjdk.net. Retrieved 2018-04-09.
- "The GCJ FAQ - GNU Project - Free Software Foundation (FSF)". Gcc.gnu.org. Retrieved 2012-07-31.
- http://www.oracle.com/technetwork/java/embedded/resources/se-embeddocs/index.html#sysreqs
- "gbenson.net". gbenson.net. Retrieved 2012-07-31.
- "License - ikvm". SourceForge.net. 2012-05-10. Retrieved 2012-07-31.
- "JAmiga - Browse /jamiga/pre-alpha 0.0.5 at Sourceforge.net". Retrieved 2012-08-11.
- "jato/README at master · penberg/jato · GitHub". 2012-11-29. Retrieved 2012-08-04.
- "Jato". Archived from the original on 2012-08-11. Retrieved 2012-08-04.
- "Jikes RVM - Browse /jikesrvm at Sourceforge.net". Sourceforge.net. 2016-11-03. Retrieved 2016-11-03.
- "License". Jikes RVM. Retrieved 2012-07-31.
- "kaffe/kaffe". GitHub.
- "Mysaifu JVM". Archived from the original on 2012-12-19. Retrieved 2012-08-10.
- "SableVM - Browse /sablevm/1.13 at". Sourceforge.net. 2007-03-30. Retrieved 2012-07-31.
- "GCC 7 Release Series — Changes, New Features, and Fixes - GNU Project - Free Software Foundation (FSF)". gcc.gnu.org.
- "jni.c - jamiga2 - Java for Amiga - Google Project Hosting". Retrieved 2012-08-11.
- "ClasspathDevelopment - jamiga2 - This document describes the work done and needed for the GNU Classpath - Java for Amiga - Google Project Hosting". Retrieved 2012-08-11.
- "interpreter.c - jamiga 2 - Java for Amiga - Google Project Hosting". Retrieved 2012-08-11.
- "JamVM | Release notes for JamVM at SourceForge.net". sourceforge.net. 2014-07-30. Retrieved 2014-10-24.
- "JamVM -- A compact Java Virtual Machine". jamvm.sourceforge.net.
- "jato/include/vm/java-version.h at master · penberg/jato · GitHub". Retrieved 2012-08-04.
- "jato/TODO at master · penberg/jato · GitHub". Retrieved 2012-08-04.
- "SourceForge.net Repository - [jcvm] Contents of /jcvm/libjc/properties.c". Jcvm.cvs.sourceforge.net. 2005-05-15. Retrieved 2012-07-31.
- "JC Virtual Machine: Home". Jcvm.sourceforge.net. Archived from the original on 2012-04-15. Retrieved 2012-07-31.
- "JC Virtual Machine Documentation". Jcvm.sourceforge.net. Retrieved 2012-07-31.
- "SourceForge: jikesrvm/jikesrvm: libraryInterface/GNUClasspath/EPL/src/gnu/classpath/VMSystemProperties.java@6e24f915d0ba". Jikesrvm.hg.sourceforge.net. Retrieved 2012-07-31.
- "SourceForge: jikesrvm/jikesrvm: files". Jikesrvm.hg.sourceforge.net. 2012-07-19. Retrieved 2012-07-31.
- "openjdk4jikesrvm - Use Openjdk library as JikesRVM's class library - Google Project Hosting". Code.google.com. Retrieved 2012-07-31.
- "Archived copy". Archived from the original on 2013-06-03. Retrieved 2012-07-22.CS1 maint: archived copy as title (link)
- "Feature request for interpreter". Archived from the original on 2015-05-04. Retrieved 2012-11-12.
- "SVN - Mysaifu JVM". 2008-11-13. Retrieved 2012-08-10.
- "Diary of Mysaifu JVM". 2010-02-09. Retrieved 2012-08-10.
- "Archived copy". Archived from the original on 2016-04-17. Retrieved 2016-07-25.CS1 maint: archived copy as title (link)
- "Oracle JDK 7 and JRE 7 Certified System Configurations". www.oracle.com.
- "OpenJDK: Port: Mips". openjdk.java.net.
- "MIPSPort - IcedTea". icedtea.classpath.org.
- "OpenJDK: PowerPC/AIX Port Project". openjdk.java.net.
- http://www.oracle.com/technetwork/java/javase/itaniumreleasenotes-140450.html
- "ZeroSharkFaq - IcedTea". icedtea.classpath.org.
- "[ANNOUNCE] Jato 0.3 - Google Groups". 2012-01-04. Retrieved 2012-08-04.
- "Supported Platforms". www.jikesrvm.org.
- "SVN - Mysaifu JVM". 2009-10-09. Retrieved 2012-08-10.
- "SableVM Project". sablevm.org.
- "Archived copy". Archived from the original on 2012-07-06. Retrieved 2012-07-24.CS1 maint: archived copy as title (link)
- "OpenJDK: BSD Port Project". openjdk.java.net.
- "Archived copy". Archived from the original on 2012-07-06. Retrieved 2012-07-24.CS1 maint: archived copy as title (link)
- "OpenJDK: Mac OS X Port Project". openjdk.java.net.
- "OpenJDK: Port: Haiku". openjdk.java.net.
- http://www.os2world.com/content/view/21877/1/
- "OpenJDK: Zero-Assembler Project". openjdk.java.net.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.