Desde Linux Darkcrizt  

QEMU 7.2 llega con una gran lista de novedades

QEMU

QEMU es un emulador de procesadores basado en la traducción dinámica de binarios

Se dio a conocer el lanzamiento de la nueva versión del proyecto QEMU 7.2, versión en la cual se ha añadido diversas mejoras de soporte a los diferentes emuladores y de los cuales lo más destacado es la implementacion de ‘virt’ en OpenRISC, asi como mejoras para ARM y más. Esta nueva versión que se presenta de QEMU 7.1 contiene más de 1800 confirmaciones de 205 autores

Para quienes desconocen de QEMU, deben saber que este 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.

Principales novedades de QEMU 7.2

En esta nueva versión que se presenta de QEMU 7.2 se destaca que se agregó soporte para instrucciones AVX, AVX2, F16C, FMA3 y VAES al emulador de arquitectura x86 en el generador de código TCG clásico, así como optimizaciones de rendimiento relacionadas con el uso de instrucciones SSE.

Otro de los cambios que se destaca, es que ahora el emulador ARM admite CPU Cortex-A35 y extensiones de procesador ETS (Enhanced Translation Synchronization), PMUv3p5 (PMU Extensions 3.5), GTG (Guest Translation Granule 4KB, 16KB, 64KB), HAFDBS y E0PD (Prevención de acceso EL0 a mapas de direcciones compartidos).

Ademas de ello el emulador de arquitectura OpenRISC implementa la plataforma ‘virt’ para pruebas de dispositivos y uso en sistemas de integración continua. Compatibilidad implementada para la ejecución de subprocesos múltiples del generador de código clásico TCG (Tiny Code Generator).

El emulador de arquitectura RISC-V en las máquinas ‘virt’ emuladas ahora tiene la capacidad de iniciar el firmware desde pflash en modo S, mientras que el emulador LoongArch agrega soporte para fw_cfg DMA, conexión en caliente de memoria y emulación de dispositivo TPM (Trusted Platform Module).

El emulador de arquitectura 390x brinda soporte para la extensión MSA5 (Message-Security-Assist Extension 5 con instrucción PRNO para generar números pseudoaleatorios), instrucciones KIMD/KLM (una implementación de SHA-512) e interpretación extendida de zPCI para invitados basada en el hipervisor KVM.

Se agregó soporte para el mecanismo de seguimiento de salida de KVM («notificar vmexit») para evitar errores en la CPU que pueden provocar un bloqueo.

De los demás cambios que se destacan de esta nueva versión:

  • Los backends para trabajar con memoria proporcionan preasignación de memoria, teniendo en cuenta la arquitectura NUMA.
  • Trabajo mejorado con el árbol de dispositivos
  • Comprobación mejorada de los encabezados de dispositivos de bloques cifrados de LUKS, se agregó la capacidad de crear imágenes de LUKS en macOS.
  • En el backend 9pfs, que permite usar el sistema de archivos de red Plan 9 para acceder de una máquina virtual a otra, se cambió al uso del hash GHashTable en la tabla de identificadores, lo que en algunas situaciones llevó a un aumento del rendimiento de 6 a 12 veces.
  • Se agregaron nuevos backends de netdev y dgram.
  • Se ha agregado soporte para FreeBSD al agente invitado de ARM.
  • Las compilaciones de GUI para macOS brindan la capacidad de incluir interfaces basadas en Cocoa y SDL/GTK en un solo archivo ejecutable.
  • Se eliminó el submódulo «slirp» incorporado, se recomienda usar la biblioteca del sistema libslirp en su lugar.
  • Debido a la falta de capacidad de prueba, la compatibilidad con hosts MIPS de 32 bits que utilizan el orden de bytes «Big endian» ha quedado obsoleta.
  • Los binarios qemu-i386 y qemu-x86_64 ahora tienen por defecto el modelo de CPU ‘max’ en lugar de ‘qemu32’ / ‘qemu64’
  • Soporte para guardar/restaurar registros SSE en marcos de señal en qemu-i386 (cuando FXSR está configurado en CPUID)
  • Soporte para guardar/restaurar el estado XSAVE en marcos de señal (cuando XSAVE está configurado en CPUID)

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.2 puedes consultar los detalles y más en el siguiente enlace.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.