Utgivelse av QEMU 6.1-emulatoren

Utgivelsen av QEMU 6.1-prosjektet er presentert. Som emulator lar QEMU deg kjøre et program kompilert for én maskinvareplattform på et system med en helt annen arkitektur, for eksempel kjøre en ARM-applikasjon på en x86-kompatibel PC. I virtualiseringsmodus i QEMU er ytelsen til kodekjøring i et isolert miljø nær ytelsen til et maskinvaresystem på grunn av direkte utførelse av instruksjoner på CPU og bruk av Xen hypervisor eller KVM-modul.

Prosjektet ble opprinnelig opprettet av Fabrice Bellard for å gi muligheten til å kjøre Linux-kjørbare filer kompilert for x86-plattformen på ikke-x86-arkitekturer. I løpet av årene med utvikling ble støtte for full emulering lagt til for 14 maskinvarearkitekturer, antallet emulerte maskinvareenheter oversteg 400. Under utarbeidelsen av versjon 6.1 ble det gjort mer enn 3000 endringer fra 221 utviklere.

Viktige forbedringer lagt til i QEMU 6.1:

  • Kommandoen "blockdev-reopen" er lagt til QMP (QEMU Machine Protocol) for å endre innstillingene til en allerede opprettet blokkeringsenhet.
  • Gnutls brukes som en prioritert kryptodriver, som er foran andre drivere når det gjelder ytelse. Den libgcrypt-baserte driveren som tidligere ble tilbudt som standard har blitt flyttet til rekkene av alternativer, og den brenneslebaserte driveren blir stående som et reservealternativ, brukt i fravær av GnuTLS og Libgcrypt.
  • Lagt til støtte for PMBus- og I2C-multipleksere (pca2, pca9546) til I9548C-emulatoren.
  • Som standard er støtte for plugins til den klassiske TCG (Tiny Code Generator) kodegeneratoren aktivert. Lagt til nye plugins execlog (utførelseslogg) og cache-modellering (simulering av oppførselen til L1-cachen i CPU).
  • ARM-emulatoren har lagt til støtte for brett basert på Aspeed (rainier-bmc, quanta-q7l1), npcm7xx (quanta-gbs-bmc) og Cortex-M3 (stm32vldiscovery) brikker. Lagt til støtte for maskinvarekryptering og hashing-motorer i Aspeed-brikker. Lagt til støtte for emulering av SVE2-instruksjoner (inkludert bfloat16), matrisemultiplikasjonsoperatorer og flushinstruksjoner for translasjonsassosiativ buffer (TLB).
  • I PowerPC-arkitekturemulatoren for emulerte pseriemaskiner er støtte for å oppdage feil når hot-plugging-enheter i nye gjestemiljøer er lagt til, grensen for antall CPUer er økt, og emulering av noen instruksjoner spesifikke for POWER10-prosessorer er implementert . Lagt til støtte for brett basert på Genesi/bPlan Pegasos II (pegasos2) brikker.
  • RISC-V-emulatoren støtter OpenTitan-plattformen og virtio-vga virtuelle GPU (basert på virgl).
  • s390-emulatoren har lagt til støtte for 16. generasjons CPU og vektorutvidelser.
  • Støtte for nye Intel CPU-modeller er lagt til x86-emulatoren (Skylake-Client-v4, Skylake-Server-v5, Cascadelake-Server-v5, Cooperlake-v2, Icelake-Client-v3, Icelake-Server-v5, Denverton- v3, Snowridge-v3, Dhyana-v2), som implementerer XSAVES-instruksjonen. Q35 (ICH9) brikkesett-emulator støtter hot plugging av PCI-enheter. Forbedret emulering av virtualiseringsutvidelser i AMD-prosessorer. Lagt til alternativ bus-lock-ratelimit for å begrense intensiteten av bussblokkering av gjestesystemet.
  • Lagt til støtte for bruk som en akselerator for NVMM-hypervisoren utviklet av NetBSD-prosjektet.
  • I GUI er støtte for passordautentisering ved bruk av VNC-protokollen nå bare aktivert når du bygger med en ekstern kryptografisk backend (gnutls, libgcrypt eller nettle).

Kilde: opennet.ru

Legg til en kommentar