La Java Virtual Machine (JVM) è un software che consente di eseguire codice Java su una determinata piattaforma di destinazione. Può essere immaginato come un “interprete universale” che traduce il codice Java in istruzioni comprensibili dalla macchina su cui viene eseguito.
Ecco alcuni dei punti principali sul funzionamento della JVM:
-
Compilazione Just-In-Time (JIT): il codice Java viene compilato in istruzioni native tipiche della macchina su cui viene eseguito. Questo processo avviene all’avvio dell’applicazione o durante l’esecuzione, aumentandone così le prestazioni.
-
Garbage Collector: la JVM include un sistema di gestione automatica della memoria noto come Garbage Collector, che libera la memoria non utilizzata.
-
Ambiente di esecuzione sicuro: la JVM include un ambiente di esecuzione sicuro e limitato per salvaguardare il sistema ospitante. Tramite la limitazione dell’accesso alle risorse del sistema se ne limita un utilizzo eccessivo, questo potrebbe rendere instabile il sistema ospitante con conseguenti blocchi inaspettati. La circoscrizione dell’accesso alle risorse viene implementata per evitare danneggiamenti con l’esecuzione di codice malevolo.
-
Supporto per più piattaforme: la JVM è disponibile per sistemi operativi differenti che si appoggiano su piattaforme hardware eterogenee.
-
Class loading: la JVM carica le classi necessarie all’esecuzione del programma solo quando sono effettivamente necessarie, in questo modo si limita l’utilizzo di memoria solo quando strettamente necessario.