Release of the QEMU 6.1 emulator

The release of the QEMU 6.1 project is presented. As an emulator, QEMU allows you to run a program built for one hardware platform on a system with a completely different architecture, for example, run an ARM application on an x86-compatible PC. In the virtualization mode in QEMU, the performance of code execution in an isolated environment is close to a hardware system due to the direct execution of instructions on the CPU and the use of the Xen hypervisor or KVM module.

The project was originally created by Fabrice Bellard to allow Linux executables built for the x86 platform to run on non-x86 architectures. Over the years of development, full emulation support has been added for 14 hardware architectures, the number of emulated hardware devices has exceeded 400. In preparation for version 6.1, more than 3000 changes were made from 221 developers.

Key improvements added in QEMU 6.1:

  • QMP (QEMU Machine Protocol) has added the "blockdev-reopen" command to change the settings of an already created block device.
  • Gnutls is used as a priority crypto driver, which is ahead of other drivers in performance. The previously default libgcrypt-based driver has been moved to an option, and the nettle-based driver has been left as a fallback in the absence of GnuTLS and Libgcrypt.
  • Added support for PMBus and I2C multiplexers to the I2C emulator (pca9546, pca9548).
  • By default, support for plugins for the classic TCG (Tiny Code Generator) code generator is enabled. Added new plugins execlog (execution log) and cache modeling (simulating the behavior of the L1 cache in the CPU).
  • Support for boards based on Aspeed (rainier-bmc, quanta-q7l1), npcm7xx (quanta-gbs-bmc) and Cortex-M3 (stm32vldiscovery) chips has been added to the ARM emulator. Added support for hardware encryption and hashing engines provided in Aspeed chips. Added support for emulating SVE2 instructions (including bfloat16), operators for matrix multiplication, and commands for resetting translation buffers (TLBs).
  • The PowerPC architecture emulator for emulated 'pseries' machines adds support for hot-plug failure detection in new guest environments, increases the CPU limit, and emulates some instructions specific to POWER10 processors. Added support for boards based on Genesi/bPlan Pegasos II (pegasos2) chips.
  • The RISC-V emulator supports the OpenTitan platform and the virtio-vga virtual GPU (based on virgl).
  • Added support for 390 generation CPU and vector extensions to s16 emulator.
  • Support for new Intel CPU models (Skylake-Client-v86, Skylake-Server-v4, Cascadelake-Server-v5, Cooperlake-v5, Icelake-Client-v2, Icelake-Server-v3, Denverton-v5, Snowridge- v3, Dhyana-v3) that implement the XSAVES instruction. The Q2 (ICH35) chipset emulator supports hot plugging of PCI devices. Improved emulation of virtualization extensions provided in AMD processors. Added bus-lock-ratelimit option to limit the intensity of bus locking by the guest.
  • Added support for use as an accelerator for the NVMM hypervisor developed by the NetBSD project.
  • In the GUI, support for password authentication when using the VNC protocol is now only enabled when building with an external cryptographic backend (gnutls, libgcrypt or nettle).

Source: opennet.ru

Add a comment