Java (virtualni stroj)

Java virtualni stroj (JVM, eng. Java Virtual Machine) je programska podrška (softver) koja omogućuje izvršavanje 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) = oblik koda koji JVM razumije i može izvršavati). Rad (funkcionalnosti i svojstva) virtualnog stroja prvenstveno su 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 (prevedi upute programa 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 su sve implementacije koje su izvedene prema specifikaciji službene, ali osnovna ili referentna implementacija Java virtualnog stroja razvijena je kroz OpenJDK projekt u obliku otvorenog koda s nazivom HotSpot. Ovu implementaciju razvio je Oracle (nekadašnji Sun Microsystems) u suradnji i s drugim velikim tvrtkama kao što su IBM, Redhat, Microsoft, Azul, SAP i druge. Tako pored spomenutog referentnog Oracleovog virtualnog stroja naziva Hotspot postoje još i implementacije: Open9, Codename One, GraalVM, Jikes RVM i dr.

Vanjske poveznice uredi