Lansarea emulatorului QEMU 6.1

A fost prezentată lansarea proiectului QEMU 6.1. Ca emulator, QEMU vă permite să rulați un program compilat pentru o platformă hardware pe un sistem cu o arhitectură complet diferită, de exemplu, să rulați o aplicație ARM pe un PC compatibil x86. În modul de virtualizare în QEMU, performanța execuției codului într-un mediu izolat este apropiată de cea a unui sistem hardware datorită execuției directe a instrucțiunilor pe CPU și utilizării hypervisorului Xen sau a modulului KVM.

Proiectul a fost creat inițial de Fabrice Bellard pentru a oferi capacitatea de a rula executabile Linux compilate pentru platforma x86 pe arhitecturi non-x86. De-a lungul anilor de dezvoltare, a fost adăugat suport pentru emulare completă pentru 14 arhitecturi hardware, numărul de dispozitive hardware emulate a depășit 400. În pregătirea versiunii 6.1, au fost făcute peste 3000 de modificări de la 221 de dezvoltatori.

Îmbunătățiri cheie adăugate la QEMU 6.1:

  • Comanda „blockdev-reopen” a fost adăugată la QMP (QEMU Machine Protocol) pentru a modifica setările unui dispozitiv bloc deja creat.
  • Gnutls este folosit ca driver cripto prioritar, care este înaintea altor drivere în ceea ce privește performanța. Driverul bazat pe libgcrypt care a fost oferit anterior în mod implicit a fost mutat în rândurile opțiunilor, iar driverul bazat pe urzici este lăsat ca opțiune de rezervă, utilizat în absența GnuTLS și Libgcrypt.
  • S-a adăugat suport pentru multiplexoare PMBus și I2C (pca2, pca9546) la emulatorul I9548C.
  • În mod implicit, suportul pentru pluginuri pentru generatorul de cod clasic TCG (Tiny Code Generator) este activat. S-au adăugat noi pluginuri execlog (jurnal de execuție) și modelare cache (simulare a comportamentului cache-ului L1 în CPU).
  • Emulatorul ARM a adăugat suport pentru plăci bazate pe cipuri Aspeed (rainier-bmc, quanta-q7l1), npcm7xx (quanta-gbs-bmc) și Cortex-M3 (stm32vldiscovery). S-a adăugat suport pentru criptarea hardware și motoarele de hashing furnizate în cipurile Aspeed. S-a adăugat suport pentru emularea instrucțiunilor SVE2 (inclusiv bfloat16), a operatorilor de multiplicare a matricei și a instrucțiunilor de curățare a bufferului asociativ de translație (TLB).
  • În emulatorul de arhitectură PowerPC pentru mașinile pseries emulate, a fost adăugat suport pentru detectarea defecțiunilor atunci când dispozitivele conectate la cald în medii noi pentru oaspeți a fost adăugată, a crescut limita numărului de procesoare și a fost implementată emularea unor instrucțiuni specifice procesoarelor POWER10 . S-a adăugat suport pentru plăci bazate pe cipuri Genesi/bPlan Pegasos II (pegasos2).
  • Emulatorul RISC-V acceptă platforma OpenTitan și GPU-ul virtual virtio-vga (bazat pe virgl).
  • Emulatorul s390 a adăugat suport pentru CPU de generația a 16-a și extensii vectoriale.
  • Suport pentru noile modele de procesoare Intel a fost adăugat la emulatorul x86 (Skylake-Client-v4, Skylake-Server-v5, Cascadelake-Server-v5, Cooperlake-v2, Icelake-Client-v3, Icelake-Server-v5, Denverton- v3, Snowridge-v3, Dhyana-v2), care implementează instrucțiunea XSAVES. Emulatorul de chipset Q35 (ICH9) acceptă conectarea la cald a dispozitivelor PCI. Emulare îmbunătățită a extensiilor de virtualizare furnizate în procesoarele AMD. S-a adăugat opțiunea bus-lock-ratelimit pentru a limita intensitatea blocării autobuzului de către sistemul oaspeților.
  • S-a adăugat suport pentru utilizarea ca accelerator pentru hypervisorul NVMM dezvoltat de proiectul NetBSD.
  • În GUI, suportul pentru autentificarea parolei atunci când se utilizează protocolul VNC este acum activat numai atunci când se construiește cu un backend criptografic extern (gnutls, libgcrypt sau nettle).

Sursa: opennet.ru

Adauga un comentariu