Udgivelse af QEMU 7.1-emulatoren

Udgivelsen af ​​QEMU 7.1-projektet er blevet præsenteret. Som emulator giver QEMU dig mulighed for at køre et program kompileret til én hardwareplatform på et system med en helt anden arkitektur, for eksempel køre en ARM-applikation på en x86-kompatibel pc. I virtualiseringstilstand i QEMU er ydeevnen af ​​kodekørsel i et isoleret miljø tæt på et hardwaresystems ydeevne på grund af direkte udførelse af instruktioner på CPU'en og brugen af ​​Xen hypervisor eller KVM-modulet.

Projektet blev oprindeligt skabt af Fabrice Bellard for at tillade Linux-eksekverbare filer bygget til x86-platformen til at køre på ikke-x86-arkitekturer. Gennem årenes udvikling er der blevet tilføjet fuld emuleringsunderstøttelse for 14 hardwarearkitekturer, antallet af emulerede hardwareenheder har oversteget 400. Som forberedelse til version 7.1 er der foretaget mere end 2800 ændringer fra 238 udviklere.

Vigtigste forbedringer tilføjet i QEMU 7.1:

  • På Linux-platformen er nul-kopi-send-muligheden implementeret, som giver dig mulighed for at organisere overførslen af ​​hukommelsessider under live-migrering uden mellemliggende buffering.
  • QMP (QEMU Machine Protocol) har tilføjet muligheden for at bruge blok-eksport-tilføj kommandoen til at eksportere NBD-billeder med sidedata i den "beskidte" tilstand. Nye kommandoer 'query-stats' og 'query-stats-schema' er også blevet tilføjet til forespørgselsstatistik fra forskellige QEMU-undersystemer.
  • Gæsteagenten har forbedret understøttelse af Solaris-platformen og tilføjet nye 'gæst-get-diskstats'- og 'gæst-get-cpustats'-kommandoer for at vise disk- og CPU-status. Tilføjet output af information fra NVMe SMART til kommandoen 'gæst-get-diske' og output af information om NVMe-bustypen til kommandoen 'gæst-get-fsinfo'.
  • Tilføjet en ny LoongArch-emulator med understøttelse af 64-bit-varianten af ​​LoongArch-instruktionssæt-arkitekturen (LA64). Emulatoren understøtter Loongson 3 5000-processorer og Loongson 7A1000 nordbroer.
  • ARM-emulatoren implementerer nye typer emulerede maskiner: Aspeed AST1030 SoC, Qaulcomm og AST2600/AST1030 (fby35). Tilføjet understøttelse af emulering af Cortex-A76 og Neoverse-N1 CPU'er, samt processorudvidelser SME (Scalable Matrix Extensions), RAS (Reliability, Availability, Serviceability) og kommandoer til blokering af lækager fra den interne cache under spekulativ udførelse af instruktioner på CPU. For 'virt'-maskiner er emulering af GICv4 interrupt-controlleren blevet implementeret.
  • I x86 arkitekturemulatoren til KVM er der tilføjet understøttelse af virtualisering af LBR (Last Branch Record) sporingsmekanismen.
  • HPPA-arkitekturemulatoren tilbyder ny firmware baseret på SeaBIOS v6, som understøtter brugen af ​​et PS/2-tastatur i boot-menuen. Forbedret seriel port-emulering. Tilføjet yderligere STI-konsolskrifttyper.
  • MIPS-arkitekturemulatoren til Nios2-kort (-maskine 10m50-ghrd) implementerer emulering af en Vectored Interrupt Controller og et skyggesæt af registre. Forbedret undtagelseshåndtering.
  • OpenRISC-arkitekturemulatoren til 'or1k-sim'-maskinen har tilføjet muligheden for at bruge op til 4 16550A UART-enheder.
  • RISC-V arkitekturemulatoren har tilføjet understøttelse af de nye instruktionssætudvidelser (ISA'er), der er defineret i 1.12.0-specifikationen, samt tilføjet understøttelse af Sdtrig-udvidelsen og forbedret understøttelse af vektorinstruktioner. Forbedrede fejlfindingsmuligheder. TPM (Trusted Platform Module)-understøttelse er blevet tilføjet til den 'virt'-emulerede maskine, og Ibex SPI-understøttelse er blevet tilføjet til 'OpenTitan'-maskinen.
  • 390x arkitekturemulatoren understøtter VEF 2 (Vector-Enhancements Facility 2) udvidelser. s390-ccw BIOS giver mulighed for at starte fra diske med en anden sektorstørrelse end 512 bytes.
  • Xtensa-arkitekturemulatoren har tilføjet understøttelse af lx106-kerner og objektkoder til cachetest.

Kilde: opennet.ru

Tilføj en kommentar