QEMU 7.0 ya fue liberado y estas son sus novedades
Hace pocos dias se dio a conocer el lanzamiento de la nueva versión de QEMU 7.0, que permite ejecutar un programa creado para una plataforma de hardware en un sistema con una arquitectura completamente diferente, por ejemplo, ejecutar una aplicación ARM en una PC compatible con x86. En el modo de virtualización en QEMU, el rendimiento de la ejecución de código en un entorno aislado es similar al de un sistema de hardware debido a la ejecución directa de instrucciones en la CPU y el uso del hipervisor Xen o módulo KVM.
A lo largo de los años de desarrollo, se agregó soporte completo de emulación para 14 arquitecturas de hardware, la cantidad de dispositivos de hardware emulados superó los 400. En preparación para la versión 7.0, se realizaron más de 2500 cambios de 225 desarrolladores.
Principales novedades de QEMU 7.0
En esta nueva versión que se presenta de QEMU 7.0 se destaca la compatibilidad con el conjunto de instrucciones Intel AMX (Advanced Matrix Extensions) implementado en los procesadores de servidor Intel Xeon Scalable ademas de que se ha agregado al emulador de arquitectura x86. AMX ofrece nuevos registros personalizados TMM «TILE» e instrucciones para manipular datos en estos registros, como TMUL (Tile matrix MULtiply) para la multiplicación de matrices.
Otro de los cambios que se destaca es que se ha mejorado la flexibilidad de realizar copias de seguridad de imágenes activas del sistema en curso (se crea una instantánea, después de lo cual se aplica un filtro de copia antes de escribir (CBW) para actualizar el estado de la instantánea, copiando datos de áreas en las que el sistema invitado escribe). La capacidad de acceder a una instantánea con una copia de seguridad no se proporciona directamente, sino a través del controlador de dispositivo de bloque de acceso a la instantánea.
El emulador ARM para máquinas ‘virt’ agregó soporte para virtio-mem-pci, detección de topología de CPU invitada y habilitación de PAuth cuando se usa un hipervisor KVM con un acelerador hvf, ademas se agregó compatibilidad con la emulación del controlador Flash OSPI y SLCR de PMC en el emulador de placa ‘xlnx-versal-virt’.
El emulador de arquitectura RISC-V agrega compatibilidad con el hipervisor KVM e implementa las extensiones vectoriales Vector 1.0, ademas de que se agregó soporte para cargar archivos binarios OpenSBI (RISC-V Supervisor Binary Interface) para máquinas ‘spike’ emuladas. Para máquinas ‘virt’ emuladas, se implementa la capacidad de usar hasta 32 núcleos de procesador y soporte para AIA.
De los demás cambios que se destacan:
- El emulador de arquitectura HPPA proporciona hasta 16 vCPU y un controlador de gráficos mejorado para entornos de usuario HP-UX VDE/CDE.
- Se agregó la capacidad de cambiar el orden de arranque de los dispositivos SCSI.
- Se agregó soporte para usar hasta 4 núcleos de CPU, cargar una imagen initrd externa y generar automáticamente un árbol de dispositivos para un núcleo de arranque en el emulador de arquitectura OpenRISC para placas ‘sim’.
- El emulador de arquitectura PowerPC para máquinas ‘pseries’ emuladas ha implementado la capacidad de ejecutar sistemas invitados bajo el control de un hipervisor KVM anidado. Se agregó soporte para el dispositivo spapr-nvdimm.
- Se agregó soporte para el controlador de interrupción XIVE2 y los controladores PHB5 para máquinas emuladas ‘powernv’, soporte mejorado para XIVE y PHB 3/4.
- Se ha agregado soporte para extensiones z15 (Miscellaneous-Instruction-Extensions Facility 3) al emulador de arquitectura s390x.
- Classic TCG (Tiny Code Generator) ha eliminado la compatibilidad con hosts con CPU ARMv4 y ARMv5 que no admiten el acceso a la memoria no alineado y no tienen suficiente RAM para ejecutar QEMU.
- Se ha mejorado el soporte para etiquetas de seguridad en el módulo virtiofs, que se utiliza para reenviar parte del sistema de archivos del entorno host al sistema invitado.
- Se corrigió la vulnerabilidad CVE-2022-0358, que le permite escalar sus privilegios en el sistema creando archivos ejecutables en directorios reenviados a través de virtiofs, pertenecientes a otro grupo y equipados con la bandera SGID.
Finalmente si estás interesado en poder conocer más al respecto de los cambios y novedades que se presentan en esta nueva versión de QEMU 7.0 puedes consultar los detalles y más en el siguiente enlace