Skip to main content

Máquinas Virtuales (QEMU)

QEMU (forma abreviada de Quick Emulator) es un hipervisor de código abierto que emula una computadora física. Desde la perspectiva del sistema host donde se ejecuta QEMU, QEMU es un programa de usuario que tiene acceso a una serie de recursos locales como particiones, archivos y tarjetas de red que luego se pasan a una computadora emulada que los ve como si fueran dispositivos reales. Un sistema operativo invitado que se ejecuta en la computadora emulada accede a estos dispositivos y se ejecuta como si estuviera ejecutándose en hardware real.

image.png

Enlaces

Qemu/KVM Virtual Machines - Proxmox VE

Emulación vs Paravirtualización

El hardware de PC emulado por QEMU incluye placa base, controladores de red, controladores SCSI, IDE y SATA, puertos serie todos ellos emulados en software. Todos estos dispositivos son el equivalente exacto en software de los dispositivos de hardware existentes, y si el sistema operativo que se ejecuta en el invitado tiene los controladores adecuados, utilizará los dispositivos como si se estuvieran ejecutando en hardware real.

Esto permite a QEMU ejecutar sistemas operativos no modificados. Sin embargo, esto tiene un coste de rendimiento, ya que ejecutar en software lo que debería ejecutarse en hardware implica mucho trabajo adicional para la CPU host. Para mitigar esto, QEMU puede presentar al sistema operativo invitado dispositivos paravirtualizados, donde el sistema operativo invitado reconoce que se está ejecutando dentro de QEMU y coopera con el hipervisor. QEMU se basa en el estándar de virtualización "virtio" y, por lo tanto, es capaz de presentar dispositivos "virtio" paravirtualizados, que incluyen un controlador de disco genérico paravirtualizado, una tarjeta de red paravirtualizada, un puerto serie paravirtualizado, un controlador SCSI paravirtualizado, etc.

Se recomienda encarecidamente utilizar el Utilice dispositivos "virtio" siempre que pueda, ya que proporcionan una gran mejora en el rendimiento y, en general, tienen un mejor mantenimiento. El uso del controlador de disco genérico "virtio" frente a un controlador IDE emulado duplicará el rendimiento de escritura secuencial. El uso de la interfaz de red "virtio" puede ofrecer hasta tres veces el rendimiento de una tarjeta de red Intel E1000 emulada.