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.