Lansarea emulatorului QEMU 11.0.0

A fost lansată versiunea 11.0.0 a proiectului QEMU. Ca emulator, QEMU permite rularea programelor compilate pentru o platformă hardware pe un sistem cu o arhitectură complet diferită, de exemplu, rularea unei aplicații pentru ARM pe un PC compatibil x86. În modul de virtualizare, performanța execuției codului într-un mediu izolat este aproape de cea a unui sistem hardware datorită executării directe a instrucțiunilor pe CPU și utilizării hipervizorului Xen sau modulului KVM în Linux, sau modulului NVMM în NetBSD.

Proiectul a fost inițial creat de Fabrice Bellard cu scopul de a permite rularea fișierelor executabile Linux compilate pentru platforma x86 pe arhitecturi diferite de x86. De-a lungul anilor de dezvoltare, a fost adăugată suport pentru emulare completă pentru 14 arhitecturi hardware, numărul dispozitivelor hardware emulate depășind 400. În pregătirea versiunii 11.0.0, au fost realizate peste 2500 de modificări de către 237 de dezvoltatori.

Îmbunătățirile cheie adăugate în QEMU 11.0:

  • A fost eliminat suportul pentru sisteme gazdă de 32 de biți, care a fost declarat învechit în aprilie anul trecut în QEMU 10.0. În lansarea din decembrie 10.2 a fost oprit suportul pentru platformele mips32 și ppc32 în generatorul de cod TCG (Tiny Code Generator), iar în lansarea QEMU 11.0 au fost eliminate platformele rămase i386, arm, ppc și riscv32, și de asemenea, a fost curățată codul sursă și sistemul de construcție de componente pentru funcționarea pe gazde de 32 de biți.
  • A fost implementat acceleratorul de virtualizare „nitro” („-accel nitro”) și un nou tip de sisteme emulate „nitro”, care permite rularea în QEMU a enclavelor izolate bazate pe tehnologia de calcul confidențial AWS Nitro Enclave, de exemplu, pentru testarea locală în QEMU a mediilor Nitro Enclave. În AWS EC2, tehnologia Nitro Enclave permite rularea de enclave izolate în mașini virtuale pentru a lucra cu date confidențiale, alocându-le o parte din resursele sale.
  • A fost îmbunătățit suportul pentru acceleratoarele de virtualizare MSHV (Microsoft Hypervisor) și WHPX (Microsoft Windows Hypervisor Platform Extensions).
  • Utilizând hipervizorul KVM („-accel kvm”), a fost oferit suport pentru virtualizarea extensiei Intel CET (Control-flow Enforcement Technology) pentru utilizarea în virtuálne mašini protecția împotriva exploit-urilor care utilizează metode de programare orientate spre întoarcere (ROP — Return-Oriented Programming). De asemenea, a fost adăugat suport pentru repornirea confidențialității. mașini virtuale, folosind pentru criptarea memoriei extensiile AMD SEV-SNP (Virtualizare Criptată Securizată — Paginare Securizată Nativă) și Intel TDX (Extensii de Domeniu de Încredere).
  • În dispozitivul VirtIO-GPU, care asigură funcționarea GPU-ului virtual, a fost adăugată posibilitatea de a seta rezoluții diferite pentru diferite dispozitive de ieșire.
  • În VirtIO-GPU a fost adăugată suportul pentru contexte DRM (context nativ Direct Rendering Manager), care permit creșterea performanței lucrului cu GPU-ul virtual din sistemul oaspete prin transmiterea directă a comenzilor către GPU-ul real al gazdei. Suportul pentru contexte DRM este activat prin utilizarea noului dispozitiv virtio-gpu-gl cu opțiunea „drm_native_context=on”. Spre deosebire de contextele Virgl și Venus, care funcționează la nivelul API OpenGL și Vulkan, contextul DRM este implementat la nivelul UAPI al kernel-ului Linux.
  • A fost adăugată posibilitatea de a utiliza limbajul C++ pentru dezvoltarea pluginurilor pentru generatorul de cod TCG (Tiny Code Generator).
  • În driverul bloc NFS a fost adăugat suportul pentru compilarea cu biblioteca libnfs 6.
  • În driverul bloc curl a fost adăugată opțiunea „force-range” pentru utilizarea forțată a antetului HTTP „Range” la descărcarea imaginilor fără a verifica mai întâi suportul acestuia printr-o cerere separată cu antetul HEAD.
  • În driverul bloc FUSE a fost dezactivată procesarea operațiunilor de export în modul sincron, ceea ce ducea la blocarea pornirii mașinii virtuale până la finalizarea prelucrării altor cereri FUSE. A fost adăugată posibilitatea de a folosi mai multe fire de execuție (iothread) la efectuarea exportului în FUSE.
  • În emulatorul arhitecturii x86 a fost adăugat suportul pentru CPU Intel Diamond Rapids („Xeon 7”).
  • În emulatorul arhitecturii ARM au fost adăugate extensii ale procesorului FEAT_ASID2 și FEAT_E2H0. În generatorul de cod TCG a fost implementată emularea extensiilor SME (Extensie Matrice Scalabilă).
  • În emulatorul arhitecturii HPPA a fost adăugat suportul pentru emularea CPU-urilor pe 64 de biți cu spațiu de adresare de 40 și 44 de biți. Prin intermediul SeaBIOS-hppa 24 a fost asigurată inițializarea controlerului PCI Astro, permițând utilizarea plăcilor video PCI pe sisteme pe 64 de biți.
  • În emulatorul arhitecturii LoongArch a apărut posibilitatea migrării PMU (Unitatea de Monitorizare a Performanței) utilizând hypervisorul KVM. În generatorul de cod TCG a fost implementată emularea extensiilor LA v1.1, sc.q și llacq/screl, precum și instrucțiunile FRECIP și DRECIP pentru calcularea valorilor inverse.
  • În emulatorul arhitecturii PowerPC a fost adăugat suportul pentru snapshoot-uri.
  • În emulatorul arhitecturii RISC-V a fost implementat suport pentru CPU MIPS P8700 și extensiile setului de instrucțiuni Zilsd, Zclsd, ZALASR și Smpmpmt.
  • În emulatorul arhitecturii s390 a apărut suportul pentru bootare de pe dispozitive virtio-blk-pci și a fost implementată simularea instrucțiunii „DIVIDE TO INTEGER”.
  • A fost acceptată o corecție care reduce întârzierile de 50-80 de ori în funcționarea fdmon (monitorizarea descriptorului de fișiere) în modul „aio=io_uring” și în timpul când sistemul se află în starea de inactivitate (idle).

    Sursa: opennet.ro
Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster