¿Qué es un hipervisor?
Un hipervisor (también conocido por su nombre en inglés: hypervisor) es un software o firmware que crea y gestiona máquinas virtuales, al abstraer los recursos de hardware de un ordenador físico y ponerlos a disposición de varios sistemas operativos al mismo tiempo. En lugar de montar un sistema completo (hardware más sistema operativo), se genera simplemente una versión virtual: una representación virtual de un entorno de PC.
Bajo la división Arsys Cloud Solutions, diseñamos Soluciones a tu medida.
¿Cómo funciona un hipervisor?
Al crear una máquina virtual (VM), esta se ejecuta sobre una máquina real no virtualizada, como un PC. La VM depende, por tanto, del hardware físico. Por ello existe una capa intermedia entre ambos niveles, encargada de la gestión: el hipervisor.
El hipervisor es un software que se ocupa de la gestión de los recursos necesarios. Este programa, también conocido como Virtual Machine Monitor (VMM), asigna los recursos del sistema. De este modo, pueden ejecutarse varias y diferentes máquinas virtuales en un mismo sistema host, ya que el hipervisor garantiza que no interfieran entre sí y que todas dispongan de la capacidad necesaria.
En resumen, el hipervisor crea una capa de abstracción entre el hardware y los sistemas operativos que se ejecutan sobre él. Esto se logra dividiendo los recursos de hardware en unidades lógicas y asignando a cada VM un entorno propio. Así, las máquinas virtuales tienen la sensación de ejecutarse directamente sobre hardware real, aunque en realidad estén compartiendo los recursos con otras VM.
La estricta separación entre las distintas máquinas virtuales no solo garantiza una buena distribución de los recursos, sino que también aumenta la seguridad. Gracias al hipervisor, se asegura que un sistema invitado no pueda acceder a los archivos de otro. Esto resulta especialmente importante en entornos de prueba, ya que así un programa defectuoso no puede dañar otras máquinas virtuales de test.
Gestión de memoria
En la virtualización de la CPU, el hipervisor utiliza técnicas como la división temporal (time-slicing) para repartir la capacidad de cálculo de forma equitativa entre las máquinas virtuales (VM). Los procesadores modernos incluyen funciones específicas de virtualización (por ejemplo, Intel VT-x o AMD-V) que ayudan al hipervisor y reducen la sobrecarga.
La gestión de la memoria RAM se realiza mediante técnicas de paginación (paging) y mapeo (mapping). El hipervisor asigna direcciones de memoria virtual a bloques de memoria física, de manera que cada VM solo puede acceder a su propio espacio de memoria.
Cuando la memoria escasea, puede emplear mecanismos como la sobresuscripción de memoria (memory overcommitment) o el inflado de memoria (memory ballooning) para distribuir los recursos de forma más eficiente entre las VM.
Gestión de E/S y de dispositivos
Las máquinas virtuales acceden a dispositivos de hardware como discos duros, tarjetas de red o tarjetas gráficas a través de interfaces virtuales. El hipervisor emula estos dispositivos o bien redirige las solicitudes directamente al hardware físico mediante técnicas de E/S directa (Direct I/O) o paso directo (pass-through). Esto garantiza un equilibrio entre compatibilidad y rendimiento.
Aislamiento y seguridad
Una de las principales ventajas de la virtualización es el aislamiento entre las máquinas virtuales (VM). Cada VM se ejecuta en su propio entorno, de modo que los errores o ataques en una no tienen efectos directos sobre otras máquinas virtuales ni sobre el sistema host. El hipervisor aplica distintos mecanismos de seguridad para garantizar esta separación estricta, entre ellos la protección de memoria, los controles de acceso y las técnicas de aislamiento en entornos de prueba (sandboxing).
Si también quieres utilizar una máquina virtual, dispones de varias opciones de software de virtualización. Para usuarios particulares, soluciones como VirtualBox o Hyper-V, la plataforma de virtualización de Microsoft, son una buena elección. En el caso de grandes empresas, resultan especialmente adecuadas las suites como la de VMware Broadcom.
Diferentes tipos de monitores de máquinas virtuales
Se distinguen dos tipos de monitores de máquinas virtuales (VMM): hipervisores de tipo 1 y tipo 2. Cada uno ofrece ventajas muy específicas. El primero de ellos es también el más antiguo: ya en la década de 1960 se realizaron los primeros intentos de virtualización con esta tecnología.
Hipervisor de tipo 1
El primer tipo se conoce como hipervisor nativo (en inglés, native hypervisor) o bare metal hypervisor. Esta forma de VMM se instala directamente en el hardware físico y no está conectada con el sistema operativo del host. Por lo tanto, este hipervisor también debe contener todos los controladores de dispositivos. El consumo de recursos del hipervisor de tipo 1 es comparativamente reducido, porque los procesos informáticos no se ejecutan a través del sistema operativo del host. Esta forma de hipervisor es especialmente adecuada para los usuarios que deseen configurar un servidor dedicado a la virtualización. Para proyectos pequeños en entornos domésticos no tendría sentido utilizar un hipervisor de tipo 1, puesto que sería demasiado complejo.

Hipervisor de tipo 2
El segundo tipo (también conocido como hosted hypervisor) requiere un sistema operativo existente, que a su vez se base en el hardware físico. Los hipervisores de tipo 2 se instalan como cualquier otro programa. A continuación, el VMM gestiona la virtualización. En este caso, no es necesario que los controladores de dispositivos estén instalados en el hipervisor , ya que el propio sistema operativo se encarga de transferirlos al software. Sin embargo, esta comodidad reduce el rendimiento, porque gran parte de los recursos se invierten en el sistema operativo del host. En cualquier caso, gracias a la sencillez del proceso de instalación y configuración, los hipervisores de tipo 2 son perfectos para proyectos más pequeños.
