Release of QEMU Emulator 4.1

Introduced project release QEMU 4.1. As an emulator, QEMU allows the execution of 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, QEMU's code execution performance in an isolated environment is close to that of a native system due to direct instruction execution on the CPU and the involvement of the Xen hypervisor or KVM module.

The project was originally created by Fabrice Bellard to enable the execution of Linux executables compiled for the x86 platform on architectures other than x86. Over the years of development, support has been added for full emulation of 14 hardware architectures, with the number of emulated hardware devices exceeding 400. More than 2000 changes from 276 developers were made in preparation for version 4.1.

Key improvements, added in QEMU 4.1:

  • Support for Hygon Dhyana and Intel SnowRidge CPU models has been added to the x86 architecture emulator. Emulation of the RDRAND extension (hardware random number generator) has been added. The flags
    md-clear and mds-no have been added to manage protection against MDS (Microarchitectural Data Sampling) attacks on Intel processors. The ability to define chip topologies using the '-smp …,dies=' flag has been implemented. Versioning for all x86 CPU models has been realized;
  • The SSH block driver has been transitioned from using libssh2 to libssh;
  • In the virtio-gpu driver (virtual GPU developed within the Virgil) project, support has been added for offloading 2D/3D rendering operations to the external vhost-user process (e.g., vhost-user-gpu);
  • In the ARM architecture emulator, support for the ARMv8.5-RNG extension for generating pseudo-random numbers has been added. Emulation support for FPU has been implemented for Cortex-M family chips, and issues with FPU emulation for Cortex-R5F have been resolved. A new build option configuration system styled in Kconfig has been proposed. Support for PL330 DMA controllers has been added for the Exynos4210 SoC;
  • In the MIPS architecture emulator, enhanced support for MSA ASE instructions has been implemented when using big-endian byte order, and the handling of division by zero cases has been aligned with the reference hardware. The performance of MSA instruction emulation for integer calculations and permutation operations has been increased.
  • The PowerPC architecture emulator now supports forwarding to the NVIDIA V100/GPU via NVLink2 using VFIO. For pseries, the emulation of the XIVE interrupt controller has been accelerated, and support for hot-plugging PCI bridges has been added. Optimizations have been made to the emulation of vector instructions (Altivec/VSX);
  • The RISC-V architecture emulator has added a new hardware model named 'spike'. Support for ISA 1.11.0 has been added. The 32-bit ABI for system calls has been improved, handling of invalid instructions has been expanded, and the built-in debugger has been enhanced. Support for CPU topology in the device tree has been included;
  • The s390 architecture emulator now supports emulating all vector instructions in the 'Vector Facility' group and has added additional elements to support gen15 systems (including support for the AP Queue Interruption Facility for vfio-ap). BIOS support has been implemented for booting from ECKD DASD, attached to the guest system via vfio-ccw;
  • In the SPARC emulator for sun4m systems, issues with using the '-vga none' flag for OpenBIOS have been resolved;
  • In the Tensilica Xtensa family processor emulator, options for the MPU (memory protection unit) and exclusive access have been implemented;
  • The 'qemu-img convert' command has added the '--salvage' option to disable emergency process termination during image conversion in case of I/O errors (for example, it can be applied to recover partially corrupted qcow2 files). In the command
    'qemu-img rebase' functionality has been ensured when a backing file for the input file has not yet been created;
  • The ability to redirect output organized using 'semihosting' technology (allowing the emulated device to use stdout, stderr, and stdin to create files on the host side) has been added to the chardev backend ('-semihosting-config enable=on,target=native,chardev=[ID]');
  • The VMDK block driver now supports the seSparse subformat in read-only mode;
  • Support for the SiFive GPIO controller has been added to the GPIO emulation driver.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster