Java (virtualni stroj)

Java virtualni stroj (JVM, eng. Java Virtual Machine) je programska podrška (softver) koja omogućuje izvršavanja programa pisanih u programskom jeziku Java (kao i programa koji su pisani nekim drugim programskom jezikom, ali su kompajlirani u javin bajtkod. (Bajtkod (eng. bytecode) = forma koju JVM razumije i može izvršavati). Rad (funkcionalnosti i svojstva) virtualnog sroja su prvenstveno definirani specifikacijom (standardom). Postojanje službene specifikacije omogućuje mogućnost izvršavanja Java koda na različitim platformama tako da programeri koji razvijaju programe u Javi ne moraju brinuti o specifičnostima platforme (ni operativnog sustava ni fizičkog stroja) na kojem će se taj program izvršavati. Ta paradigma je opisana poznatim izrazom "Compile once, run everywhere" - slobodno prevedeno - kompajliraj (razvij program jednom), izvršavaj ga bilo gdje (na bilo kojoj platformi).

Različite kompanije razvile su (prema istoj službenoj specifikaciji) svoje implementacije java virtualnog stroja i kako se sve one moraju pridržavati specifikacije tako se na svima njima može izvršavati isti Java kod. Ne može je se nazvati službenom, jer sve implementacje ako su izvedene prema specifikaciji su službene, ali osnovna ili referentna implementacija java virtualnog stroja je razvijena kroz OpenJDK projekt u obliku otvorenog koda s nazivom HotSpot. Ovu implementaciju razvili su prvenstveno Oracle, ali u suradnji i s drugim velikim kompanijama kao što su IBM, Redhat, Microsoft, Azul, SAP i dr. Tako pored spomenutog referentnog Oracleovog virtualnog stroja naziva Hotspot postoje još i implementacije Open9, Codename One, GraalVM, Jikes RVM i dr. (vidi link)

Vanjske povezniceUredi