QEMU 6.0 projekti vĂ€ljaandmine on toimunud. QEMU emulaator vĂ”imaldab kĂ€ivitada ĂŒhte riistvaraplatvormile kompileeritud programmi sĂŒsteemis, mille arhitektuur on tĂ€iesti erinev, nĂ€iteks kĂ€ivitada ARM-i rakendust x86 ĂŒhilduval PC-l. VirtualiseerimisreĆŸiimis on QEMU kooditegevuse jĂ”udlus isoleeritud keskkonnas lĂ€hedane riistvarasĂŒsteemile, tĂ€nu otse CPU juures kĂ€ideldavatele kĂ€sklustele ja Xen hĂŒperviisori vĂ”i KVM mooduli kasutamisele.
Alguses loodi projekt Fabrice Bellardi poolt selleks, et tagada Linuxi, mis on kompileeritud x86 platvormide jaoks, kĂ€ivitamine teistes arhitektuurides. Aastate jooksul on arendajate panusel lisatud toetus 14 riistvaraarhitektuuri tĂ€ielikuks emuleerimiseks ning emuleeritud riistvaraseadmete arv on ĂŒletanud 400. QEMU 6.0 versiooni ettevalmistamisel on tehtud ĂŒle 3300 muudatuse 268 arendajalt.
QEMU 6.0 lisatud peamised tÀiustused:
- NVMe kontrolleri emulaator viidi vastavusse NVMe 1.4 spetsifikatsiooniga ja varustati katse toetusega tsoonitud nimedega ruumides, multipath I/O ja ketta kaifimise krĂŒpteerimise toetamiseks.
- Lisatud katsevariandid â-machine x-remoteâ ja â-device x-pci-proxy-devâ seadmete emuleerimise viimiseks vĂ€listesse protsessidesse. Hetkel toetatakse selles reĆŸiimis ainult SCSI-adapteri lsi53c895 emuleerimist.
- Lisatud katsetoetus mÀlusisude snapshotide loomisele.
- Lisatud FUSE-moodul plokiseadmete eksportimiseks, mis vĂ”imaldab mountida ĂŒkskĂ”ik millise plokiseadme oleku lĂ”ike kĂŒlalis sĂŒsteemis. Eksport toimub QMP-kĂ€suga block-export-add vĂ”i valikuga ââexportâ utiliidis qemu-storage-daemon.
- ARM emulaatorisse on lisatud toetust ARMv8.1-M 'Helium' arhitektuurile ja Cortex-M55 protsessoritele ning tÀiendavatele ARMv8.4 TTST, SEL2 ja DIT kÀsklustele. Toetatakse ARM-plaate mps3-an524 ja mps3-an547. Samuti on xlnx-zynqmp, xlnx-versal, sbsa-ref, npcm7xx ja sabrelite seadmete emuleerimiseks rakendatud tÀiendav tugi.
- ARM-ile emulatsiooni reĆŸiimides, nii sĂŒsteemi kui ka kasutajakeskkonnas, on rakendatud ARMv8.5 MTE (MemTag, mĂ€lu mĂ€rgistamise laiendus) toe, mis vĂ”imaldab siduda mĂ€rgid iga mĂ€lu eraldamise operatsiooniga ning korraldada mĂ€lu juurde pÀÀsemise kontrolli, mis peab olema seotud Ă”ige mĂ€rgiga. Seda laiendust saab kasutada haavatavuste Ă€rahoidmiseks, mis on pĂ”hjustatud juba vabastatud mĂ€lublokide, puhvrikohanduste, algatamata juurde pÀÀsemiste ja konteksti vĂ€ljaspool kasutamise tĂ”ttu.
- 68k arhitektuuri emulaatorisse on lisatud toe uue tĂŒĂŒbi emuleeritud masinate âvirtâ jaoks, mis kasutavad seadme virtio jĂ”udluse optimeerimiseks.
- x86 arhitektuuri emulaatorisse on lisatud vĂ”imalus kasutada AMD SEV-ES (Secure Encrypted Virtualization) tehnoloogiat, et krĂŒpteerida protsessori registreid, mida kasutatakse kĂŒlalisĂŒsteemis, mis muudab registreid olevad andmed hostkeskkonnale kĂ€ttesaamatuks, kui kĂŒlalisĂŒsteem ei paku neile juurdepÀÀsu.
- Klassikalises TCG (Tiny Code Generator) koodigeneraatoris on x86 sĂŒsteemide emulatsiooni ajal rakendatud PKS (Protection Keys Supervisor) mehhanismi toetust, mida saab kasutada Ă”igustatud mĂ€lulehtede juurdepÀÀsu kaitseks.
- MIPS arhitektuuri emulaatorisse on lisatud uus tĂŒĂŒp emuleeritud masinaid âvirtâ koos Hiina Loongson-3 protsessorite toega.
- PowerPC arhitektuuri emulaatorisse on emuleeritud masinatele âpowernvâ lisatud toe vĂ€listele BMC-kontrolleritele. Emuleeritud masinate pseries puhul on tagatud mĂ€lusalvestuse ja CPU kuumalt eemaldamise katsete korral teavitamine rike.
- Toetatakse Qualcomm Hexagon koos DSP protsessorite emulatsiooni.
- Klassikalise TCG (Tiny Code Generator) koodigeneraatori toel on vĂ”imalik kasutada macOS hostkeskkondi Apple M1 uute ARM-kiipidega sĂŒsteemides.
- RISC-V arhitektuuri emulaatoris Microchip PolarFire plaatide jaoks on rakendatud QSPI NOR flash tuge.
- Tricore emulaatorisse on tulnud toe uue TriBoardi mudeli jaoks, mis emuleerib Infineoni SoC TC27x.
- ACPI emulaatoris on antud vĂ”imalus mÀÀrata kĂŒlalisĂŒsteemide vĂ”rgukaartidele nimesid, mis ei sĂ”ltu PCI bussile ĂŒhendamise jĂ€rjekorrast.
- Virtiofs on lisatud FUSE_KILLPRIV_V2 valiku toe, et parandada kĂŒlalisĂŒsteemide jĂ”udlust.
- VNC on lisatud tugitegevus kursori lÀbipaistvusele ja ekraani eraldusvÔime skaleerimise toetamine virtio-vga puhul, mis sÔltub akna suurusest.
- QMP-s (QEMU Masina Protokoll) on lisatud toetamine asĂŒnkroonsete paralleelsete juurdepÀÀsude jaoks varukoopiate tegemise ĂŒlesannete tĂ€itmisel.
- USB emulatoris on lisatud vÔimalus salvestada USB-seadmete töö kÀigus tekkinud liiklust eraldi pcap-faili, et seda hiljem Wiresharkis kontrollida.
- On lisatud uued QMP-kÀsud load-snapshot, save-snapshot ja delete-snapshot qcow2-snapshootide haldamiseks.
- virtiofs-is on parandatud haavatavused CVE-2020-35517 ja CVE-2021-20263. Esimene probleem vĂ”imaldab juurdepÀÀsu host-keskkonnale kĂŒlalis sĂŒsteemist, luues kĂŒlalis sĂŒsteemis privileeritud kasutaja kaudu seadmefaili jagatud kausta, mis on koos host-keskkonnaga. Teine probleem tuleneb vea tĂ”ttu laiendatud atribuutide töötlemisel valikus 'xattrmap' ja vĂ”ib viia kirjutamisĂ”iguse taastumise ignoreerimise ning privileegide tĂ”usmiseni kĂŒlalis sĂŒsteemis.
Allikas: opennet.ru
