Izdanje emulatora QEMU 6.0

Objavljen je izlazak projekta QEMU 6.0. Kao emulator, QEMU omogućava pokretanje programa koji su napravljeni za jednu hardversku platformu na sustavu s potpuno različitom arhitekturom, na primjer, pokretanje aplikacija za ARM na x86 kompatibilnom računalu. U režimu virtualizacije, performanse izvršavanja koda u izoliranom okruženju bliske su hardverskim sustavima zahvaljujući izravnom izvršavanju instrukcija na CPU-u i korištenju hipervizora Xen ili modula KVM.

Projekt je prvotno stvorio Fabrice Bellard s ciljem omogućavanja pokretanja izvršnih datoteka Linuxa koje su napravljene za x86 platformu na arhitekturama koje se razlikuju od x86. Tijekom godina razvoja dodana je podrška za potpunu emulaciju za 14 hardverskih arhitektura, a broj emuliranih hardverskih uređaja premašio je 400. Prilikom pripreme verzije 6.0 napravljeno je više od 3300 promjena od 268 razvojnih programera.

Ključna poboljšanja dodana u QEMU 6.0:

  • Emulator kontrolera NVMe usklađen je sa specifikacijom NVMe 1.4 i opremljen eksperimentalnom podrškom za zonske prostore imena, multipath I/O i end-to-end enkripciju podataka na uređaju za pohranu.
  • Dodane su eksperimentalne opcije «-machine x-remote» i «-device x-pci-proxy-dev» za iznošenje emulacije uređaja u vanjske procese. U ovom režimu za sada se podržava samo emulacija SCSI adaptera lsi53c895.
  • Dodana je eksperimentalna podrška za stvaranje snimaka sadržaja RAM-a.
  • Dodan je FUSE modul za izvoz blokovnih uređaja, koji omogućava montiranje trenutnog stanja bilo kojeg blokovnog uređaja korištenog u gostujućem sustavu. Izvoz se provodi putem QMP naredbe block-export-add ili putem opcije «—export» u alatu qemu-storage-daemon.
  • Emulator ARM-a dobio je podršku za arhitekturu ARMv8.1-M ‘Helium’ i procesore Cortex-M55, kao i proširene instrukcije ARMv8.4 TTST, SEL2 i DIT. Dodana je podrška za ARM platforme mps3-an524 i mps3-an547. Za platforme xlnx-zynqmp, xlnx-versal, sbsa-ref, npcm7xx i sabrelite implementirana je dodatna emulacija uređaja.
  • Za ARM u režimima emulacije na razini sustava i korisničkog okruženja implementirana je podrška za proširenje ARMv8.5 MTE (MemTag, proširenje oznaka memorije), koje omogućava povezivanje oznaka s svakom operacijom dodjele memorije i organizaciju provjere pokazivača prilikom pristupa memoriji, koja mora biti povezana s ispravnom oznakom. Proširenje se može koristiti za blokiranje iskorištavanja ranjivosti uzrokovanih pristupom već oslobođenim blokovima memorije, prekomjernim pisanjem, pristupom prije inicijalizacije i korištenjem izvan trenutnog konteksta.
  • U emulatoru arhitekture 68k dodana je podrška za novu vrstu emuliranih strojeva „virt“, koja koristi virtio za optimizaciju performansi uređaja.
  • U emulatoru arhitekture x86 dodana je mogućnost primjene tehnologije AMD SEV-ES (Secure Encrypted Virtualization) za enkripciju registara procesora korištenih u gostujućem sustavu, što čini sadržaj registara nedostupnim za domaće okruženje, osim ako gostujući sustav izričito ne omogući pristup njima.
  • U klasičnom generatoru koda TCG (Tiny Code Generator) prilikom emulacije sustava x86 implementirana je podrška za mehanizam PKS (Protection Keys Supervisor), koji se može primijeniti za zaštitu pristupa privilegiranim stranicama memorije.
  • U emulatoru arhitekture MIPS dodana je nova vrsta emuliranih strojeva „virt“ s podrškom za kineske procesore Loongson-3.
  • U emulatoru arhitekture PowerPC za emulirane strojeve „powernv“ dodana je podrška za vanjske BMC kontrolere. Za emulirane strojeve pseries osigurano je obavještavanje o kvarovima prilikom pokušaja vrućeg uklanjanja memorije i CPU-a.
  • Dodana je podrška za emulaciju procesora Qualcomm Hexagon s DSP-om.
  • U klasičnom generatoru koda TCG (Tiny Code Generator) implementirana je podrška za domaća okruženja macOS na sustavima s novim ARM čipom Apple M1.
  • U emulatoru arhitekture RISC-V za Microchip PolarFire ploče implementirana je podrška za QSPI NOR flash.
  • U emulatoru Tricore pojavila se podrška za novi model ploča TriBoard, koji emulira SoC Infineon TC27x.
  • U emulatoru ACPI omogućena je dodjela mrežnim adapterima u gostujućim sustavima imena koja nisu neovisna od reda povezivanja na PCI sabirnicu.
  • U virtiofs dodana je podrška za opciju FUSE_KILLPRIV_V2 za poboljšanje performansi gostujućih sustava.
  • U VNC je dodana podrška za prozirnost kursora i podrška za skaliranje razlučivosti ekrana u virtio-vga, ovisno o veličini prozora.
  • U QMP (QEMU Machine Protocol) dodana je podrška za asinhroni paralelni pristup prilikom obavljanja zadataka rezervnog kopiranja.
  • U emulatoru USB dodana je mogućnost spremanja prometa koji se stvara prilikom rada s USB uređajima u zasebni pcap fajl za naknadnu inspekciju u Wiresharku.
  • Dodane su nove QMP komande load-snapshot, save-snapshot i delete-snapshot za upravljanje snapshotovima qcow2.
  • U virtiofs su ispravljene ranjivosti CVE-2020-35517 i CVE-2021-20263. Prvi problem omogućava pristup host okruženju iz gostujućeg sistema putem stvaranja privilegiranog korisnika u gostujućem sistemu posebnog uređaja u direktoriju koji se dijeli s host okruženjem. Drugi problem uzrokovan je greškom prilikom obrade proširenih atributa u opciji 'xattrmap' i može dovesti do ignorisanja poništavanja prava na pisanje i povećanja privilegija unutar gostujućeg sistema.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster