„Java virtuális gép” változatai közötti eltérés
[ellenőrzött változat] | [ellenőrzött változat] |
15. sor: | 15. sor: | ||
* [[CACAO]] [http://www.cacaojvm.org] |
* [[CACAO]] [http://www.cacaojvm.org] |
||
* [[IKVM.NET]] [http://www.ikvm.net/] |
* [[IKVM.NET]] [http://www.ikvm.net/] |
||
* [[ |
* [[JAmiga]] [http://sourceforge.net/projects/jamiga] |
||
* [[JamVM]] |
* [[JamVM]] |
||
* [[Jaos]] [http://www.oberon.ethz.ch/jaos/] |
* [[Jaos]] [http://www.oberon.ethz.ch/jaos/] |
A lap 2012. március 18., 19:22-kori változata
Java virtuális gépnek (röviden JVM) nevezik a Sun Microsystems által specifikált Java programozási nyelvhez készített virtuális gépeket. A JVM alapvető feladata a Java byte-kód futtatása, amely platformfüggetlen. A Java byte-kód általában Java nyelvű forrás fordításával jön létre, de léteznek olyan fordítók, amelyek más programnyelvek forrásait fordítják Java byte-kódra.
Fontosabb elemei:
- Osztálybetöltő (class loader), a főbb ellenőrzéseket végzi a byte-kódon, előkészíti futtatásra
- Szemétgyűjtő (garbage collector), működés közben a nem használt objektumokat eltávolítja a memóriából, ezzel helyet szabadít fel
- Végrehajtó motor (execution engine), a tulajdonképpeni végrehajtást végzi
Implementációk
Számos, a Java előírásokat követő implementáció született, számos operációs rendszerre, és számos hardver platformra is. Erőfeszítések történetek olyan hardver gyártására, amely közvetlenül (natív módon) tudja futtatni a Java bájtkódot, de ezek teljesítménye rendre alulmaradt az általános célú hardvereken futó JVM-ekkel szemben.
- AegisVM [1]
- Apache Harmony [2]
- CACAO [3]
- IKVM.NET [4]
- JAmiga [5]
- JamVM
- Jaos [6]
- JC [7]
- Jikes RVM [8]
- JNode [9]
- Kaffe
- Kissme [10]
- leJOS [11]
- NanoVM [12]
- SableVM
- JOP [13]
- Blackdown Java [14]
A Java-hoz hasonló nyelvet támogató virtuális gépet fejlesztett a Microsoft is, amely bizonyos inkompatibilitásokat leszámítva az egyik legjobb teljesítményű virtuális gép volt, de részben jogi okokból, másrészt a Java nyelvhez képességeiben hasonló saját C# nyelv piacra dobásával ennek fejlesztését nem folytatták.