Izdaja emulatorja QEMU 7.2

Predstavljena je izdaja projekta QEMU 7.2. Kot emulator vam QEMU omogoča zagon programa, izdelanega za eno platformo strojne opreme, v sistemu s popolnoma drugačno arhitekturo, na primer zagon aplikacije ARM na računalniku, združljivem z x86. V virtualizacijskem načinu v QEMU je zmogljivost izvajanja kode v izoliranem okolju blizu strojne opreme zaradi neposrednega izvajanja ukazov na CPE in uporabe hipervizorja Xen ali modula KVM.

Projekt je prvotno ustvaril Fabrice Bellard, da bi izvedljivim datotekam Linuxa, zgrajenim za platformo x86, omogočil izvajanje v arhitekturah, ki niso x86. V letih razvoja je bila dodana popolna podpora za emulacijo za 14 arhitektur strojne opreme, število emuliranih naprav strojne opreme je preseglo 400. V pripravah na različico 7.2 je bilo narejenih več kot 1800 sprememb s strani 205 razvijalcev.

Ključne izboljšave, dodane v QEMU 7.2:

  • Emulator x86 v klasičnem generatorju kode TCG ima dodano podporo za navodila AVX, AVX2, F16C, FMA3 in VAES ter optimizacije delovanja v zvezi z uporabo navodil SSE. Za KVM je bila dodana podpora za mehanizem za sledenje izhodom iz navideznega stroja (»notify vmexit«), ki vam omogoča, da zaobidete napake v CPE, ki lahko povzročijo zastoj.
  • Emulator ARM podpira Cortex-A35 CPU in razširitve procesorja ETS (Enhanced Translation Synchronization), PMUv3p5 (PMU Extensions 3.5), GTG (Guest Translation Granule 4KB, 16KB, 64KB), HAFDBS (strojni nadzor zastavice dostopa in »umazanega« stanja) in E0PD (preprečevanje dostopa EL0 do particioniranih naslovnih zemljevidov).
  • Emulator LoongArch dodaja podporo za fw_cfg DMA, pomnilnik z vročo vklopom in emulacijo naprave TPM (Trusted Platform Module).
  • Emulator arhitekture OpenRISC implementira platformo 'virt' za testiranje naprav in njihovo uporabo v sistemih za neprekinjeno integracijo. Implementirana je podpora za večnitno izvajanje klasičnega generatorja kod TCG (Tiny Code Generator).
  • Emulator arhitekture RISC-V v emuliranih strojih 'virt' ima možnost nalaganja vdelane programske opreme iz pflash v načinu S. Izboljšano delo z drevesom naprav.
  • Emulator 390x nudi podporo za MSA5 (Message-Security-Assist Extension 5 z navodili PRNO za generiranje psevdonaključnih števil), navodila KIMD/KLM (implementacija SHA-512) in razširjeno interpretacijo zPCI za goste, ki temeljijo na hipervizorju KVM.
  • Zaledja za delo s pomnilnikom zagotavljajo vnaprejšnjo dodelitev pomnilnika ob upoštevanju arhitekture NUMA.
  • Preverjanje glave šifriranih blokovnih naprav LUKS je bilo okrepljeno in dodana je bila možnost ustvarjanja slik LUKS v sistemu macOS.
  • Zaledje 9pfs, ki omogoča uporabo omrežnega datotečnega sistema Plan 9 za dostop do enega navideznega stroja do drugega, je prešlo na uporabo zgoščene vrednosti GHashTable v identifikatorski tabeli, kar je v nekaterih situacijah povzročilo 6- do 12-kratno povečanje zmogljivosti.
  • Dodan nov netdev backend stream in dgram.
  • Podpora za FreeBSD je bila dodana agentu za goste, ki temeljijo na ARM.
  • Zgradbe GUI za macOS omogočajo vključitev vmesnikov, ki temeljijo na Cocoa in SDL/GTK, v eno izvršljivo datoteko.
  • Vgrajeni podmodul “slirp” je bil odstranjen, namesto tega je priporočljiva uporaba sistemske knjižnice libslirp.
  • Zaradi pomanjkanja zmogljivosti testiranja je bila podpora za gostiteljske sisteme z 32-bitnimi procesorji MIPS, ki uporabljajo vrstni red bajtov Big Endian, opuščena.

Vir: opennet.ru

Dodaj komentar