Con riferimento ai sistemi operativi, la virtualizzazione è una tecnica con la quale si supporta l'esecuzione contemporanea di più guest OS su uno stesso hardware fisico, grazie all'accorgimento di simulare a tutti gli effetti la presenza di più macchine indipendenti. Ogni guest OS ha così l’illusione di girare nel proprio normale contesto di esecuzione, mentre in realtà sta girando in una Virtual Machine, che è solo un’astrazione creata dal virtualizzatore.
Interponendosi fra l’hardware e i sistemi operativi ospitati, il virtualizzatore può “far credere” al guest OS che la scheda grafica, il disco, gli indirizzi di rete, la memoria e perfino il processore siano diversi da quelli reali, senza che il guest OS possa accorgersi del trucco o andare incontro a malfunzionamenti a causa dell’ambiente anomalo.
Per ottenere questi risultati esistono varie tecniche alternative, con o senza supporto hardware. Le soluzioni software (hypervisor, traduzione e caching del codice binario) hanno il vantaggio di girare anche su hardware privo di estensioni specifiche e possono comunque riuscire ad ottenere ottime prestazioni.
