The release of the QEMU project 10.1.0 has been announced. As an emulator, QEMU allows you to run programs compiled for one hardware platform on a system with a completely different architecture, for example, running an ARM application on an x86-compatible PC. In virtualization mode, the performance of code execution in an isolated environment is close to that of a hardware system due to direct instruction execution on the CPU and the involvement of the Xen hypervisor or the KVM module in Linux, or the NVMM module in NetBSD.
The project was originally created by Fabrice Bellard to provide the capability of running Linux executables compiled for the x86 platform on architectures other than x86. Over the years of development, full emulation support has been added for 14 hardware architectures, and the number of emulated hardware devices has exceeded 400. In preparing version 11.0, more than 2,700 changes were made by 226 developers.
Key improvements added in QEMU 10.1:
- Initial support for memory mapping for confidential guest environments has been implemented in VFIO (Virtual Function I/O), where memory encryption is used to protect against interference and analysis by the host system administrator. This change allows for the passthrough of devices to guest systems protected by Intel TDX (Trusted Domain Extensions) and AMD SEV-SNP (Secure Nested Paging) mechanisms.
- The ability to use the multifd mechanism for accelerating Live migration in postcopy mode has been added, where initially the target host receives and starts the virtual machine, and then gradually the unneeded contents of the RAM are transferred. The Live migration precopy mode has been optimized. RDMA migration support for IPv6 has been added.
- The QEMU Guest Agent has added the 'guest-get-load' command to obtain information about the system load average in virtual machines running Windows.
- Support for name substitution in EDID (Extended Display Identification Data) has been added in virtio-gpu.
- The x86 architecture emulator has implemented the use of the Intel TDX (Trusted Domain Extensions) mechanism for encrypting the RAM of guest systems that operate under the KVM hypervisor. Support for the initialization of confidential of virtual machines in IGVM (Independent Guest Virtual Machine) format has also been added, for which Intel TDX and AMD SEV-SNP mechanisms are used for protection.
- The ARM architecture emulator now supports boards (Analog Devices ‘max78000fthr’, ‘ast2700fc’, Meta ‘catalina-bmc’, NVIDIA ‘gb200-bmc’ and ‘ast2700a0-evb’). Emulation of the CPU extensions FEAT_SME2, FEAT_SME2p1, FEAT_SME_B16B16, FEAT_SME_F16F16, FEAT_SVE_B16B16, and FEAT_SVE2p1 has been added. Support for nested virtualization using KVM has been incorporated into the standard virtual ARM platform ‘virt’, as well as support for the CXL (Compute Express Link) bus and hot plugging of PCI devices through ACPI.
- The RISC-V architecture emulator now features the emulation of the Kunminghu processor and the associated platform. Support for the instruction set architecture extension Ziccif has been added, implementing an atomic variant of the fetch instruction.
- The LoongArch architecture emulator now includes support for the emulation of the irqchip interrupt controller on the kernel side.
- Experimental support for compiling to WebAssembly (WASM) has been added using the Emscripten compiler.
- Support for Debian 11 has been discontinued in the components for host environments.
Source: opennet.ru
