Las máquinas virtuales permiten emular una computadora completa mediante software, lo que permite ejecutar sistemas operativos de forma aislada en una misma máquina física. Existen máquinas virtuales de sistema, que permiten ejecutar múltiples sistemas operativos invitados de forma aislada compartiendo los recursos del hardware, y máquinas virtuales de proceso, que aíslan procesos pero comparten el sistema operativo anfitrión. Las máquinas virtuales de sistema se usan comúnmente para probar sistemas operativos