En la virtualización de hardware, los recursos de un sistema físico pueden distribuirse entre varios sistemas virtuales. Cada sistema invitado, incluyendo todos los programas que se ejecutan en él, está separado del hardware subyacente.
En la práctica, las máquinas virtuales se utilizan principalmente para aislar ciertos procesos y aplicaciones por razones de seguridad. En comparación con otros conceptos de virtualización, las VM ofrecen una fuerte encapsulación y por lo tanto funcionan como base para productos de hosting en los que varios servidores de clientes son operados sobre una plataforma de hardware común. La provisión de máquinas virtuales es la base del alojamiento compartido y las ofertas de VPS (Servidor Virtual Privado). Debido a que cada sistema huésped se ejecuta en un entorno de tiempo de ejecución aislado, los procesos encapsulados en una máquina virtual no afectan al sistema host ni a otros sistemas huéspedes de la misma máquina física.
En el contexto empresarial, las máquinas virtuales se utilizan para reducir los costes de operación y mantenimiento de las infraestructuras de TI. Las empresas a veces poseen una amplia infraestructura de TI que está inactiva la mayor parte del día, por lo que las máquinas virtuales pueden reducir significativamente los tiempos de inactividad de este tipo. En lugar de proporcionar a cada área de aplicación de la estructura de TI empresarial su propia máquina física, se tiende cada vez más a ejecutar servidores de correo, bases de datos, archivos o aplicaciones en entornos virtuales aislados que comparten una misma plataforma de hardware potente. Este concepto se implementa en el contexto de la consolidación de servidores ya que, normalmente, es más barato mantener una gran plataforma informática para diferentes sistemas virtuales que operar en varios ordenadores pequeños. Además, los procesadores siguen siendo componentes caros, por lo que el tiempo no utilizado del procesador es un factor de coste innecesario que puede evitarse al cambiar a sistemas virtuales.
Otro campo de aplicación de los entornos virtuales es el desarrollo de software. Los programadores que desarrollan aplicaciones para diferentes arquitecturas de sistemas a menudo utilizan máquinas virtuales para realizar pruebas de software. Los hipervisores permiten el funcionamiento en paralelo de diferentes sistemas operativos o versiones del sistema, donde las VM pueden crearse, clonarse y eliminarse del disco duro físico con solo pulsar un botón y sin dejar ningún dato guardado. Además, los procesos defectuosos dentro de una máquina virtual no tienen ningún efecto en el sistema subyacente debido a la encapsulación.
Los particulares suelen utilizar hipervisores de emulación para ejecutar aplicaciones escritas originalmente para una arquitectura de sistema diferente. Sin embargo, debe tenerse en cuenta que la virtualización del hardware, así como la emulación, siempre van de la mano de pérdidas de rendimiento del sistema. Por ejemplo, si un usuario desea ejecutar un programa Linux con una máquina virtual en su equipo Windows, debe gastar recursos adicionales tanto en el hipervisor como en el sistema invitado. Una aplicación Linux encapsulada de este tipo ya no tiene todo el rendimiento del hardware subyacente a su disposición. Esto se denomina overhead o gastos generales.