Una máquina virtual permite ejecutar un sistema operativo de forma aislada del hardware mediante software. Existen máquinas virtuales de proceso que ofrecen un entorno independiente de la plataforma hardware y del sistema operativo, y máquinas virtuales de sistema que permiten ejecutar múltiples sistemas operativos en una sola máquina física. Algunas herramientas comunes de máquinas virtuales son VirtualBox, VMware y QEMU.