Virtual Machine
Definizione rapida
Ambiente software isolato che riproduce un sistema di calcolo o un'astrazione di esecuzione sopra una piattaforma ospitante.
Spiegazione
Una macchina virtuale può emulare hardware per eseguire un intero sistema operativo oppure offrire un runtime portabile per applicazioni, come nel caso della JVM. L'isolamento facilita test, consolidamento e distribuzione.
Esempio pratico
Un server fisico ospita più VM, ciascuna con il proprio sistema operativo e risorse assegnate.
Spiegazione tecnica
L'hypervisor virtualizza CPU, memoria, dispositivi e interrupt, traducendo o mediando l'accesso all'hardware. Le VM di processo eseguono invece bytecode tramite interprete, compilazione dinamica e servizi del runtime.
Da non confondere con
Non è un container: il container condivide normalmente il kernel dell'host, mentre una VM di sistema dispone di un proprio sistema operativo virtualizzato.