Vydanie emulátora QEMU 6.0

Bol uvoľnený projekt QEMU 6.0. Ako emulátor QEMU umožňuje spustiť program, ktorý bol zostavený pre jednu hardvérovú platformu, na systéme s úplne inou architektúrou, napríklad spustiť aplikáciu pre ARM na počítači kompatibilnom s x86. V režime virtualizácie je výkon vykonávania kódu v izolovanom prostredí blízky hardvérovej sústave vďaka priamemu vykonávaniu inštrukcií na CPU a zapojeniu hypervízora Xen alebo modulu KVM.

Projekt bol pôvodne vytvorený Fabrice Bellard s cieľom umožniť spúšťanie zostavených spustiteľných súborov Linux pre platformu x86 na architektúrach odlišných od x86. Počas rokov vývoja bola pridaná podpora úplnej emulácie pre 14 hardvérových architektúr a počet emulovaných hardvérových zariadení presiahol 400. Pri príprave verzie 6.0 bolo realizovaných viac ako 3300 zmien od 268 vývojárov.

Kľúčové vylepšenia pridané do QEMU 6.0:

  • Emulátor ovládačov NVMe bol prispôsobený špecifikácii NVMe 1.4 a vybavený experimentálnou podporou zónovaných názvov priestorov, multipath I/O a priebežného šifrovania údajov na úložisku.
  • Pridané experimentálne možnosti „-machine x-remote“ a „-device x-pci-proxy-dev“ pre externú emuláciu zariadení. V tomto režime sa zatiaľ podporuje len emulácia SCSI adaptéru lsi53c895.
  • Pridaná experimentálna podpora pre vytváranie snímok obsahu RAM.
  • Pridaný FUSE modul na export blokových zariadení, ktorý umožňuje pripojiť okamžik stavu akéhokoľvek blokového zariadenia používaného v hosťujúcom systéme. Export sa vykonáva cez príkaz QMP block-export-add alebo cez možnosť „—export“ v nástroji qemu-storage-daemon.
  • Do emulátora ARM bola pridaná podpora architektúry ARMv8.1-M ‘Helium’ a procesorov Cortex-M55, ako aj rozšírené inštrukcie ARMv8.4 TTST, SEL2 a DIT. Bola pridaná podpora ARM platforiem mps3-an524 a mps3-an547. Pre platformy xlnx-zynqmp, xlnx-versal, sbsa-ref, npcm7xx a sabrelite bola realizovaná ďalšia emulácia zariadení.
  • Pre ARM v režimoch emulácie na úrovni systému a používateľského prostredia bola implementovaná podpora rozšírenia ARMv8.5 MTE (MemTag, rozšírenie označovania pamäte), ktoré umožňuje priradiť značky k každej operácii alokácie pamäte a zabezpečiť pri prístupe k pamäti kontrolu ukazovateľa, ktorý by mal byť spojený s správnou značkou. Toto rozšírenie sa môže použiť na blokovanie zneužívania zraniteľností spôsobených prístupom k už uvoľneným blokom pamäte, pretečením vyrovnávacej pamäte, prístupmi pred inicializáciou a použitím mimo aktuálneho kontextu.
  • V emulátore architektúry 68k bola pridaná podpora nového typu emulovaných strojov „virt“, ktoré využívajú technológiu virtio na optimalizáciu výkonu zariadení.
  • V emulátore architektúry x86 bola pridaná možnosť využitia technológie AMD SEV-ES (Secure Encrypted Virtualization) na šifrovanie registrov procesora používanej v hostiteľskom systéme, čo robí obsah registrov neprístupným pre hostiteľské prostredie, pokiaľ hostiteľský systém výslovne neposkytne k nim prístup.
  • V klasickom generátore kódu TCG (Tiny Code Generator) pri emulácii systémov x86 bola implementovaná podpora mechanizmu PKS (Protection Keys Supervisor), ktorý sa môže použiť na ochranu prístupu k privilegovaným stránkam pamäte.
  • V emulátore architektúry MIPS bol pridaný nový typ emulovaných strojov „virt“ s podporou čínskych procesorov Loongson-3.
  • V emulátore architektúry PowerPC pre emulované stroje „powernv“ bola pridaná podpora externých BMC ovládačov. Pre emulované stroje pseries je zabezpečené informovanie o poruchách pri pokuse o horúce vybratie pamäte a CPU.
  • Pridaná podpora emulácie procesorov Qualcomm Hexagon s DSP.
  • V klasickom generátore kódu TCG (Tiny Code Generator) bola implementovaná podpora hostiteľských prostredí macOS na systémoch s novým ARM čipom Apple M1.
  • V emulátore architektúry RISC-V pre dosky Microchip PolarFire bola implementovaná podpora QSPI NOR flash.
  • V emulátore Tricore bola pridaná podpora novej modelovej dosky TriBoard, emulujúcej SoC Infineon TC27x.
  • V emulátore ACPI bola poskytnutá možnosť priradiť sieťovým adaptérom v hostiteľských systémoch názvy, ktoré sú nezávislé od poradia pripojenia na zbernicu PCI.
  • V virtiofs bola pridaná podpora možnosti FUSE_KILLPRIV_V2 na zvýšenie výkonu hostiteľských systémov.
  • Do VNC bola pridaná podpora priehľadnosti kurzora a podpora škálovania rozlíšenia obrazovky na virtio-vga, založená na veľkosti okna.
  • Do QMP (QEMU Machine Protocol) bola pridaná podpora asynchrónneho paralelného prístupu pri vykonávaní úloh zálohovania.
  • V USB emulátore bola pridaná možnosť uchovávania prevádzky, ktorá sa vytvára pri práci s USB zariadeniami, do samostatného pcap súboru na následné preskúmanie vo Wiresharku.
  • Boli pridané nové QMP príkazy load-snapshot, save-snapshot a delete-snapshot na správu snímok qcow2.
  • Vo virtiofs boli odstránené zraniteľnosti CVE-2020-35517 a CVE-2021-20263. Prvý problém umožňuje prístup k hostiteľskému prostrediu z hosťovského systému vytvorením privilegovaným používateľom v hosťovskom systéme špeciálneho zariadenia v adresári zdieľanom s hostiteľským prostredím. Druhý problém je spôsobený chybou pri spracovaní rozšírených atribútov v možnosti 'xattrmap' a môže viesť k ignorovaniu resetovania práv na zápis a k zvýšeniu privilégií v hosťovskom systéme.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster