Porównanie wirtualnych maszyn Java
Informacje o wersji
Nazwa | Twórca | Pierwsze publiczne wydanie | Najnowsza stabilna wersja | Najnowsza data wydania | Koszt, dostępność | Licencja |
---|---|---|---|---|---|---|
Eclipse OpenJ9 (wcześniej IBM J9) | IBM | ? | 0,25,0 | 16 marca 2021 r | Bezpłatny |
Licencja Apache 2.0 Eclipse Licencja publiczna 2.0 |
GCJ | GNU ANTYLOPA | 6 września 1998 r | 6.4 (Terminal) | 4 lipca 2017 r | Bezpłatny | GPL w wersji 2 lub nowszej, z „wyjątkiem libgcc” |
GraalVM | Wyrocznia | maj 2019 r | 21.3.0 | 19 października 2021 r | Bezpłatny | Tylko wersja GPL 2 |
HotSpot , edycja OpenJDK | Sun Microsystems , Oracle | 27 kwietnia 1999 r | jdk-16 | 16 marca 2021 r | Bezpłatny | Tylko wersja GPL 2 |
HotSpot , edycja Oracle JDK | Sun Microsystems , Oracle | 27 kwietnia 1999 r | jdk 16 | 16 marca 2021 r | Bezpłatny | Prawnie zastrzeżony |
HotSpot , wersja osadzona w Javie SE | Sun Microsystems , Oracle | 27 kwietnia 1999 r | ? | ? | Handlowy | Prawnie zastrzeżony |
HotSpot , port zerowy | Gary'ego Bensona | ? | ? | ? | Bezpłatny | GPL 2 |
IKVM.NET | Jeroena Frijtersa | 28 czerwca 2004 r | 7.0.4335.0 | 5 grudnia 2011 r | Bezpłatny | Licencja zlib |
Jamiga | Peter Werno, Joakim Nordström | 19 maja 2005 r | 1.2 | 6 stycznia 2014 r | Bezpłatny | GPL w wersji 2 lub nowszej |
JamVM | Roberta Loughera | 13 marca 2003 r | 2.0.0 | 30 lipca 2014 r | Bezpłatny | GPL w wersji 2 lub nowszej |
Jato VM | Pekka Enberg i współpracownicy | ? | 0,3 | 4 stycznia 2012 r | Bezpłatny | Tylko wersja GPL 2 |
Maszyna wirtualna JC | Archiego L. Cobbsa | ? | 1.4.7 | 13 listopada 2005 r | Bezpłatny | LGPL w wersji 2.1 lub nowszej |
Jikes RVM | IBM | 14 października 2001 r | 3.1.4 | 18 lutego 2016 r | Bezpłatny | Licencja publiczna Eclipse w wersji 1.0 |
Kawa | Technologie transwirtualne | 1996 | 1.1.9 | 22 lutego 2008 r | Bezpłatny | GPL w wersji 2 lub nowszej |
Mysaifu JVM | ? | 16 kwietnia 2005 r | 0.4.8 | 5 marca 2010 r | Bezpłatny | GPL 2 |
SableVM | Grupa Badawcza Sable | ? | 1.13 | 30 marca 2007 r | Bezpłatny | LGPL w wersji 2.1 lub nowszej |
Specyfikacja
JVM | Status | Najnowsza obsługiwana wersja Java | Obsługiwane biblioteki klas | Wydajność | ||||
---|---|---|---|---|---|---|---|---|
Ścieżka klasy GNU | OpenJDK | Inny | Interpretacja | AOT | JIT | |||
GCJ | Nie jest już utrzymywany ani dystrybuowany przez GNU od GCC 7 | ? | Tak | NIE | Tak | Tak | NIE | |
HotSpot , edycja OpenJDK | Implementacja referencyjna. | 1.8 | NIE | Tak | Tak | NIE | Tak | |
HotSpot , edycja Oracle JDK | Implementacja referencyjna. | 1.8 | NIE | Tak | Tak | NIE | Tak | |
HotSpot , wersja osadzona w Javie SE | ? | NIE | Tak | Tak | NIE | Tak | ||
HotSpot , port zerowy | Port OpenJDK tylko dla interpretera, prawie nie używający języka asemblera i zaprojektowany tak, aby był bardzo przenośny. | 1.7 | NIE | Tak | Tak | NIE | NIE | |
IKVM.NET | ? | ? | ? | Bez względu na to, czego używa środowisko uruchomieniowe platformy .NET | ||||
Jamiga | 1.4 | Tak | NIE | Tak | NIE | NIE | ||
JamVM | 1.8 | Tak | Tak | Tak | NIE | Tak | ||
Jato VM | 1.6 | Tak | NIE | NIE | NIE | Tak | ||
Maszyna wirtualna JC | Tłumaczy Javę na C i kompiluje ją za pomocą kompilatora C. | 1.4 | Tak | NIE | Tak | Tak | Tak | |
Jikes RVM | 1.6 | Tak | Port | Harmonia Apaczów | NIE | ? | Tak | |
Kawa | 1.4 | Tak | NIE | Tak | NIE | Tak | ||
Mysaifu JVM | ? | Tak | NIE | Tak | NIE | NIE | ||
SableVM | Nieobsługiwany | 1.4 | Tak | NIE | Tak | NIE | NIE |
Obsługiwane architektury procesorów
JVM | x86 | x86-64 | SPARC | MIPS | Itanium | Moc ISA | RAMIĘ | Alfa | S/390 | z/Architektura | m68k |
---|---|---|---|---|---|---|---|---|---|---|---|
GCJ | Tak | Tak | Tak | Tak | Tak | Tak | Tak | Tak | Tak | NIE | NIE |
HotSpot , edycja OpenJDK | Tak | Tak | Tylko Solarisy | Port | NIE | Port PowerPC / AIX | Tak | NIE | NIE | NIE | NIE |
HotSpot , edycja Oracle JDK | Tak | Tak | Tylko Solarisy | NIE | Java 1.6 | NIE | Tak | NIE | NIE | NIE | NIE |
HotSpot , wersja osadzona w Javie SE | Tak | Tak | Tak | ? | ? | Tak | Tak | ? | ? | ? | ? |
HotSpot , port zerowy | Tak | Tak | NIE | Tak | Tak | Tak | Tak | Tak | NIE | Tak | NIE |
IKVM.NET | Dowolna architektura z platformą .NET. | ||||||||||
Jamiga | ? | ? | NIE | NIE | NIE | Tak | NIE | NIE | NIE | NIE | Tak |
JamVM | Tak | Tak | Tak | Tak | NIE | Tak | Tak | NIE | NIE | NIE | NIE |
Jato VM | Tak | W budowie | NIE | NIE | NIE | W budowie | Wstępna obsługa ARMv5 | NIE | NIE | NIE | NIE |
Maszyna wirtualna JC | Tak | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE |
Jikes RVM | Tak | NIE | NIE | NIE | NIE | Tak | NIE | NIE | NIE | NIE | NIE |
Kawa | Tak | Tak | Tak | Tak | Tak | Tak | Tak | Tak | Tak | NIE | Tak |
Mysaifu JVM | NIE | NIE | NIE | NIE | NIE | NIE | Tak | NIE | NIE | NIE | NIE |
SableVM | Tak | Tak | Tak | Tak | Tak | Tak | Tak | Tak | Tak | NIE | Tak |
Obsługiwane systemy operacyjne
JVM | Okna | Linuks | FreeBSD | NetBSD | OpenBSD | Solaris | OpenSolaris | Darwin | System operacyjny Mac | iOS | BeOS | Haiku | AIX | IRIX | OS/2 | Windows Mobile | AmigaOS | Inny |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GCJ | Tak | Tak | Tak | ? | ? | Tak | ? | Tak | Tak | ? | ? | ? | ? | Tak | ? | NIE | NIE | DEC OSF 4.0f i 5.1, mikrokontroler Hitachi SH-3/4 |
HotSpot , edycja OpenJDK | Tak (rozpowszechniane jako kod źródłowy) | Tak | Port | Port | Port | Tak | Tak | ? | Tak | NIE | NIE | Port | Port | NIE | Port | NIE | NIE | |
HotSpot , edycja Oracle JDK | Tak | Tak | NIE | NIE | NIE | Tak | ? | ? | Tak | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | |
HotSpot , wersja osadzona w Javie SE | Tak | Tak | NIE | NIE | NIE | Tak | ? | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | |
HotSpot , port zerowy | NIE | Tak | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | |
IKVM.NET | Dowolny system operacyjny z platformą .NET | |||||||||||||||||
Jamiga | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | Tak | |
JamVM | NIE | Tak | Tak | NIE | Tak | Tak | Tak | Tak | Tak | Na iPhonie z jailbreakiem | NIE | NIE | NIE | NIE | NIE | NIE | NIE | kFreeBSD |
Jato VM | NIE | Tak | NIE | NIE | NIE | NIE | NIE | W budowie | ? | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | |
Maszyna wirtualna JC | NIE | Tak | Tak | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | |
Jikes RVM | NIE | Tak | NIE | NIE | NIE | NIE | NIE | NIE | Tak | NIE | NIE | NIE | Tak | NIE | NIE | NIE | NIE | |
Kawa | Korzystanie z Cygwina | Tak | Tak | Tak | Tak | Tak | ? | Tak | Tak | NIE | Tak | NIE | Tak | Tak | NIE | NIE | Tak | Wiele innych |
Mysaifu JVM | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | NIE | Tak | NIE | |
SableVM | Korzystanie z Cygwina | Tak | Tak | ? | ? | ? | ? | ? | Tak | ? | ? | ? | ? | ? | ? | ? | ? |