Paglabas ng QEMU 6.0 emulator

Ang paglabas ng proyektong QEMU 6.0 ay ipinakita. Bilang isang emulator, pinapayagan ka ng QEMU na magpatakbo ng isang program na pinagsama-sama para sa isang platform ng hardware sa isang system na may ganap na naiibang arkitektura, halimbawa, magpatakbo ng isang ARM application sa isang x86-compatible na PC. Sa virtualization mode sa QEMU, ang pagganap ng code execution sa isang nakahiwalay na kapaligiran ay malapit sa isang hardware system dahil sa direktang pagpapatupad ng mga tagubilin sa CPU at ang paggamit ng Xen hypervisor o KVM module.

Ang proyekto ay orihinal na nilikha ni Fabrice Bellard upang magbigay ng kakayahang magpatakbo ng mga Linux executable na pinagsama-sama para sa x86 platform sa mga hindi x86 na arkitektura. Sa paglipas ng mga taon ng pag-unlad, ang suporta para sa buong pagtulad ay idinagdag para sa 14 na arkitektura ng hardware, ang bilang ng mga emulated na hardware na aparato ay lumampas sa 400. Sa paghahanda ng bersyon 6.0, higit sa 3300 mga pagbabago ang ginawa mula sa 268 na mga developer.

Mga pangunahing pagpapahusay na idinagdag sa QEMU 6.0:

  • Ang NVMe controller emulator ay dinadala sa pagsunod sa detalye ng NVMe 1.4 at nilagyan ng pang-eksperimentong suporta para sa mga naka-zone na namespace, multipath I/O at end-to-end na data encryption sa drive.
  • Nagdagdag ng mga pang-eksperimentong opsyon na "-machine x-remote" at "-device x-pci-proxy-dev" para ilipat ang emulation ng device sa mga external na proseso. Sa mode na ito, ang emulation lang ng lsi53c895 SCSI adapter ang kasalukuyang sinusuportahan.
  • Nagdagdag ng pang-eksperimentong suporta para sa paglikha ng mga snapshot ng mga nilalaman ng RAM.
  • Nagdagdag ng FUSE module para sa pag-export ng mga block device, na nagbibigay-daan sa iyong i-mount ang isang slice ng estado ng anumang block device na ginagamit sa guest system. Isinasagawa ang pag-export sa pamamagitan ng QMP command block-export-add o sa pamamagitan ng opsyong β€œ--export” sa qemu-storage-daemon utility.
  • Ang ARM emulator ay nagdaragdag ng suporta para sa ARMv8.1-M 'Helium' na arkitektura at mga processor ng Cortex-M55, pati na rin ang pinahabang ARMv8.4 TTST, SEL2 at DIT na mga tagubilin. Nagdagdag ng suporta para sa mga ARM board na mps3-an524 at mps3-an547 din. Ang karagdagang emulation ng device ay ipinatupad para sa xlnx-zynqmp, xlnx-versal, sbsa-ref, npcm7xx at sabrelite boards.
  • Para sa ARM, sa mga mode ng emulation sa mga antas ng system at user environment, ang suporta para sa extension ng ARMv8.5 MTE (MemTag, Memory Tagging Extension) ay ipinatupad, na nagbibigay-daan sa iyo na magbigkis ng mga tag sa bawat operasyon ng paglalaan ng memorya at ayusin ang isang pointer check kapag pag-access ng memorya, na dapat na nauugnay sa tamang tag . Maaaring gamitin ang extension upang harangan ang pagsasamantala sa mga kahinaan na dulot ng pag-access sa mga nakalaya na bloke ng memorya, pag-apaw ng buffer, pag-access bago ang pagsisimula, at paggamit sa labas ng kasalukuyang konteksto.
  • Ang 68k architecture emulator ay nagdagdag ng suporta para sa isang bagong uri ng emulated machine na "virt", na gumagamit ng virtio device para i-optimize ang performance.
  • Ang x86 emulator ay nagdaragdag ng kakayahang gumamit ng AMD SEV-ES (Secure Encrypted Virtualization) na teknolohiya upang i-encrypt ang mga rehistro ng processor na ginagamit sa guest system, na ginagawang hindi maa-access ang mga nilalaman ng mga register sa host environment maliban kung ang guest system ay tahasang nagbibigay ng access sa kanila.
  • Ang klasikong TCG (Tiny Code Generator) code generator, kapag tinutularan ang mga x86 system, ay nagpapatupad ng suporta para sa mekanismo ng PKS (Protection Keys Supervisor), na magagamit upang protektahan ang access sa mga privileged memory page.
  • Ang isang bagong uri ng emulated machine na "virt" ay idinagdag sa MIPS architecture emulator na may suporta para sa Chinese Loongson-3 processors.
  • Sa PowerPC architecture emulator para sa mga emulated machine na "powernv", idinagdag ang suporta para sa mga external na BMC controllers. Para sa mga emulated pseries machine, ibinibigay ang abiso ng mga pagkabigo kapag sinusubukang i-hot alisin ang memorya at CPU.
  • Nagdagdag ng suporta para sa pagtulad sa mga processor ng Qualcomm Hexagon na may DSP.
  • Ang klasikong TCG (Tiny Code Generator) code generator ay sumusuporta sa macOS host environment sa mga system na may bagong Apple M1 ARM chip.
  • Ang RISC-V architecture emulator para sa Microchip PolarFire boards ay sumusuporta sa QSPI NOR flash.
  • Sinusuportahan na ngayon ng Tricore emulator ang bagong modelo ng TriBoard board, na ginagaya ang Infineon TC27x SoC.
  • Ang ACPI emulator ay nagbibigay ng kakayahang magtalaga ng mga pangalan sa mga network adapter sa mga guest system na independiyente sa pagkakasunud-sunod kung saan nakakonekta ang mga ito sa PCI bus.
  • Ang virtiofs ay nagdagdag ng suporta para sa opsyong FUSE_KILLPRIV_V2 para mapahusay ang performance ng bisita.
  • Nagdagdag ang VNC ng suporta para sa transparency ng cursor at suporta para sa pag-scale ng resolution ng screen sa virtio-vga, batay sa laki ng window.
  • Ang QMP (QEMU Machine Protocol) ay nagdagdag ng suporta para sa asynchronous parallel access kapag nagsasagawa ng mga backup na gawain.
  • Ang USB emulator ay nagdagdag ng kakayahang i-save ang trapikong nabuo kapag nagtatrabaho sa mga USB device sa isang hiwalay na pcap file para sa kasunod na inspeksyon sa Wireshark.
  • Nagdagdag ng mga bagong command ng QMP na load-snapshot, save-snapshot at delete-snapshot para pamahalaan ang mga qcow2 snapshot.
  • Ang mga kahinaan CVE-2020-35517 at CVE-2021-20263 ay naayos sa mga birtiof. Ang unang problema ay nagbibigay-daan sa pag-access sa host environment mula sa guest system sa pamamagitan ng paglikha ng isang espesyal na device file sa guest system ng isang privileged user sa isang direktoryo na ibinahagi sa host environment. Ang pangalawang isyu ay sanhi ng isang bug sa paghawak ng mga pinahabang katangian sa opsyon na 'xattrmap' at maaaring maging sanhi ng pagbalewala ng mga pahintulot sa pagsulat at pagtaas ng pribilehiyo sa loob ng sistema ng bisita.

Pinagmulan: opennet.ru

Magdagdag ng komento