Release av QEMU 7.1-emulatorn

Releasen av QEMU 7.1-projektet presenteras. Som emulator låter QEMU dig köra ett program byggt för en hårdvaruplattform på ett system med en helt annan arkitektur, till exempel köra en ARM-applikation på en x86-kompatibel PC. I virtualiseringsläget i QEMU är prestandan för kodexekvering i en isolerad miljö nära ett hårdvarusystem på grund av direkt exekvering av instruktioner på CPU:n och användningen av Xen hypervisor eller KVM-modul.

Projektet skapades ursprungligen av Fabrice Bellard för att tillåta körbara Linux-filer byggda för x86-plattformen att köras på icke-x86-arkitekturer. Under årens utveckling har fullt emuleringsstöd lagts till för 14 hårdvaruarkitekturer, antalet emulerade hårdvaruenheter har överstigit 400. Som förberedelse för version 7.1 har mer än 2800 ändringar gjorts från 238 utvecklare.

Viktiga förbättringar som lagts till i QEMU 7.1:

  • På Linux-plattformen är alternativet noll-copy-send implementerat, vilket gör att du kan organisera överföringen av minnessidor under livemigrering utan mellanliggande buffring.
  • QMP (QEMU Machine Protocol) har lagt till möjligheten att använda kommandot block-export-add för att exportera NBD-bilder med siddata i "smutsigt" tillstånd. Nya kommandon 'query-stats' och 'query-stats-schema' har också lagts till i frågestatistik från olika QEMU-delsystem.
  • Gästagenten har förbättrat stödet för Solaris-plattformen och lagt till nya kommandon 'guest-get-diskstats' och 'guest-get-cpustats' för att visa disk- och CPU-status. Lade till utmatning av information från NVMe SMART till kommandot 'guest-get-disks', och utmatning av information om NVMe-busstypen till kommandot 'guest-get-fsinfo'.
  • Lade till en ny LoongArch-emulator med stöd för 64-bitarsvarianten av LoongArch-instruktionsuppsättningsarkitekturen (LA64). Emulatorn stöder Loongson 3 5000-processorer och Loongson 7A1000 northbridges.
  • ARM-emulatorn implementerar nya typer av emulerade maskiner: Aspeed AST1030 SoC, Qaulcomm och AST2600/AST1030 (fby35). Tillagt stöd för emulering av Cortex-A76 och Neoverse-N1-processorer, samt processortillägg SME (Scalable Matrix Extensions), RAS (Reliability, Availability, Serviceability) och kommandon för att blockera läckor från den interna cachen under spekulativ exekvering av instruktioner på CPU. För "virt"-maskiner har emulering av GICv4-avbrottskontrollern implementerats.
  • I x86-arkitekturemulatorn för KVM har stöd för virtualisering av spårningsmekanismen LBR (Last Branch Record) lagts till.
  • HPPA-arkitekturemulatorn erbjuder ny firmware baserad på SeaBIOS v6, som stöder användningen av ett PS/2-tangentbord i startmenyn. Förbättrad serieportemulering. Lade till ytterligare STI-konsolteckensnitt.
  • MIPS-arkitekturemulatorn för Nios2-kort (-maskin 10m50-ghrd) implementerar emulering av en Vectored Interrupt Controller och en skugguppsättning av register. Förbättrad undantagshantering.
  • OpenRISC-arkitekturemulatorn för 'or1k-sim'-maskinen har lagt till möjligheten att använda upp till 4 16550A UART-enheter.
  • RISC-V-arkitekturemulatorn har lagt till stöd för de nya instruktionsuppsättningarna (ISA) som definieras i 1.12.0-specifikationen, samt lagt till stöd för Sdtrig-tillägget och förbättrat stöd för vektorinstruktioner. Förbättrade felsökningsmöjligheter. TPM (Trusted Platform Module)-stöd har lagts till den "virt"-emulerade maskinen, och Ibex SPI-stöd har lagts till "OpenTitan"-maskinen.
  • 390x-arkitekturemulatorn ger stöd för VEF 2-tillägg (Vector-Enhancements Facility 2). s390-ccw BIOS ger möjligheten att starta från diskar med en annan sektorstorlek än 512 byte.
  • Xtensa-arkitekturemulatorn har lagt till stöd för lx106-kärnor och objektkoder för cache-testning.

Källa: opennet.ru

Lägg en kommentar