„Java virtuális gép” változatai közötti eltérés
[ellenőrzött változat] | [ellenőrzött változat] |
7. sor: | 7. sor: | ||
== Licencelése == |
== Licencelése == |
||
{{építés alatt}} |
|||
A [[Java Platform, Standard Edition|J2SE]] 5.0-tól kezdve, a változásokat a JVM specifikációban a [[Java Community Process]] alatt fejlesztetették, egész pontosan a JSR 924 alatt.<ref>[http://www.jcp.org/en/jsr/detail?id=924 JSR 924], specifies changes to the JVM specification starting with J2SE 5.0</ref> A 2006-os állapot szerint, |
A [[Java Platform, Standard Edition|J2SE]] 5.0-tól kezdve, a változásokat a JVM specifikációban a [[Java Community Process]] alatt fejlesztetették, egész pontosan a JSR 924 alatt.<ref>[http://www.jcp.org/en/jsr/detail?id=924 JSR 924], specifies changes to the JVM specification starting with J2SE 5.0</ref> A 2006-os állapot szerint, a specifikációbeli változtatások támogatják a [[class (file format)|class fájl formátum]]on végzett ajánlott változtatásokat (a JSR 202-as szerint<ref>[http://www.jcp.org/en/jsr/detail?id=202 JSR 202], specifies a number of changes to the class file format</ref>) a JSR 924 karbantartási kiadásaként. A JVM specifikációt könyv formátumban publikálták<ref>''[http://java.sun.com/docs/books/vmspec/ The Java Virtual Machine Specification]'' (the [http://java.sun.com/docs/books/vmspec/html/VMSpecTOC.doc.html first] and [http://java.sun.com/docs/books/vmspec/2nd-edition/html/VMSpecTOC.doc.html second] editions are also available online)</ref>, ami "kék könyvként" ismert. Az előszava így kezdődik: |
||
{{quote|Szándékunk, hogy ez a specifikáció hatásosan dokumentálja a Java virtuális gépet, és lehetővé tegye a kompatibilis tiszta (clean-room) implementációk készítését. Az Oracle teszteket biztosít, hogy ellenőrizhetők legyenek a Java virtuális gép megfelelő operációinak implementációi.}} |
{{quote|Szándékunk, hogy ez a specifikáció hatásosan dokumentálja a Java virtuális gépet, és lehetővé tegye a kompatibilis tiszta (clean-room) implementációk készítését. Az Oracle teszteket biztosít, hogy ellenőrizhetők legyenek a Java virtuális gép megfelelő operációinak implementációi.}} |
||
A lap 2012. március 18., 21:23-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
Licencelése
A J2SE 5.0-tól kezdve, a változásokat a JVM specifikációban a Java Community Process alatt fejlesztetették, egész pontosan a JSR 924 alatt.[1] A 2006-os állapot szerint, a specifikációbeli változtatások támogatják a class fájl formátumon végzett ajánlott változtatásokat (a JSR 202-as szerint[2]) a JSR 924 karbantartási kiadásaként. A JVM specifikációt könyv formátumban publikálták[3], ami "kék könyvként" ismert. Az előszava így kezdődik:
„Szándékunk, hogy ez a specifikáció hatásosan dokumentálja a Java virtuális gépet, és lehetővé tegye a kompatibilis tiszta (clean-room) implementációk készítését. Az Oracle teszteket biztosít, hogy ellenőrizhetők legyenek a Java virtuális gép megfelelő operációinak implementációi.” |
Az Oracle JVM-jét (amit a SUN felvásárlása révén szerzett meg) HotSpot-nak hívják. A Clean-room Java implementációk a következők: Kaffe és IBM J9. Az Oracle továbbra is fenntartja a kontrollt a Java védjegy felett, amit arra használ, hogy kiszűrje, hogy mely implementációk illeszkednek teljesen kompatibilis módon az Oracle specifikációjára.
Lásd még
- Java virtuális gépek listája
- Alkalmazás virtuális gépek összehasonlítása
- Automatikus kivételkezelés
- Java hatékonyság
- JVM nyelvek listája
- Java processzor