Una máquina virtual es un software que emula un ordenador completo y permite ejecutar programas como si se estuviera en un ordenador físico. Las máquinas virtuales se clasifican en máquinas virtuales de sistema, que permiten multiplexar la máquina física entre varias virtuales con sus propios sistemas operativos, y máquinas virtuales de proceso, que ejecutan un solo proceso dentro del sistema operativo anfitrión. Un hypervisor gestiona la virtualización del hardware para las máquinas virtuales de sistema.