Paglabas ng QEMU 4.0 emulator

Nabuo pagpapalabas ng proyekto QEMU 4.0. 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 native 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 4.0, higit sa 3100 mga pagbabago ang ginawa mula sa 220 na mga developer.

Susi mga pagpapabutiidinagdag sa QEMU 4.0:

  • Ang suporta para sa mga extension ng pagtuturo ng ARMv8+ ay idinagdag sa ARM architecture emulator: SB, PredInv, HPD, LOR, FHM, AA32HPD,
    PAuth, JSConv, CondM, FRINT at BTI. Nagdagdag ng suporta para sa pagtulad sa Musca at MPS2 boards. Pinahusay na ARM PMU (Power Management Unit) emulation. Sa plataporma birt idinagdag ang kakayahang gumamit ng higit sa 255 GB ng RAM at suporta para sa mga u-boot na imahe na may uri ng "noload";

  • Sa x86 architecture emulator sa virtualization acceleration engine HAX (Intel Hardware Accelerated Execution) ay nagdagdag ng suporta para sa POSIX-compliant hosts gaya ng Linux at NetBSD (dati ay ang Darwin platform lang ang sinusuportahan). Sa Q35 chipset emulator (ICH9) para sa mga pangunahing PCIe port, ang maximum na bilis (16GT/s) at ang bilang ng mga linya ng koneksyon (x32) na tinukoy sa detalye ng PCIe 4.0 ay maaari na ngayong opsyonal na ideklara (upang matiyak ang pagiging tugma, ang 2.5GT ay naka-install bilang default para sa mas lumang mga uri ng QEMU machine /s at x1). Posibleng i-load ang Xen PVH na mga imahe gamit ang opsyong "-kernel";
  • Ang MIPS architecture emulator ay nagdagdag ng suporta para sa multi-threaded emulation gamit ang classic na TCG code generator (Tiny Code Generator). Nagdagdag din ng suporta para sa emulation ng CPU I7200 (nanoMIPS32 ISA) at I6500 (MIPS64R6 ISA), ang kakayahang magproseso ng mga kahilingan sa uri ng CPU gamit ang QMP (QEMU Management Protocol), nagdagdag ng suporta para sa SAARI at SAAR configuration registers. Pinahusay na pagganap ng mga virtual machine na may uri ng Fulong 2E. Na-update na pagpapatupad ng Interthread Communication Unit;
  • Sa PowerPC architecture emulator, idinagdag ang suporta para sa pagtulad sa XIVE interrupt controller, pinalawak ang suporta para sa POWER9, at para sa P series, idinagdag ang kakayahang mag-hot plug ng mga PCI host bridge (PHB, PCI host bridge). Ang proteksyon laban sa mga pag-atake ng Spectre at Meltdown ay pinagana bilang default;
  • Ang suporta para sa PCI at USB emulation ay idinagdag sa RISC-V architecture emulator. Sinusuportahan na ngayon ng built-in na debugging server (gdbserver) ang pagtukoy ng mga listahan ng rehistro sa mga XML file. Nagdagdag ng suporta para sa mga patlang ng mstatus TSR, TW at TVM;
  • Ang s390 architecture emulator ay nagdagdag ng suporta para sa z14 GA 2 na modelo ng CPU, pati na rin ang suporta para sa pagtulad sa mga extension ng pagtuturo para sa floating point at vector operations. Ang kakayahang mag-hot-plug na mga device ay naidagdag sa vfio-ap;
  • Ang Tensilica Xtensa family processor emulator ay nagpabuti ng SMP support para sa Linux at nagdagdag ng suporta para sa FLIX (Flexible length instructions extension);
  • Ang opsyon na '-display spice-app' ay idinagdag sa graphical na interface upang i-configure at ilunsad ang isang bersyon ng Spice remote access client na may disenyong katulad ng interface ng QEMU GTK;
  • Nagdagdag ng suporta para sa kontrol sa pag-access gamit ang mga opsyon na tls-authz/sasl-authz sa pagpapatupad ng VNC server;
  • Nagdagdag ang QMP (QEMU Management Protocol) ng suporta para sa centralized/external (Out-of-band) command execution at nagpatupad ng mga karagdagang command para sa pagtatrabaho sa mga block device;
  • Ang pagpapatupad ng EDID interface ay idinagdag sa VFIO para sa mga sinusuportahang mdev (Intel vGPU), na nagpapahintulot sa iyong baguhin ang resolution ng screen gamit ang mga xres at yres na opsyon;
  • Isang bagong 'xen-disk' na device ang idinagdag para sa Xen, na maaaring independiyenteng gumawa ng disk backend para sa Xen PV (nang hindi ina-access ang xenstore). Ang pagganap ng Xen PV disk backend ay nadagdagan at ang kakayahang baguhin ang laki ng disk ay naidagdag;
  • Ang mga kakayahan sa diagnostic at pagsubaybay ay pinalawak sa mga network block device, at napabuti ang pagiging tugma ng kliyente sa mga may problemang pagpapatupad ng NBD server. Idinagdag ang "--bitmap", "--list" at "--tls-authz" na mga opsyon sa qemu-nbd;
  • Nagdagdag ng suporta para sa PCI IDE mode sa emulated IDE/by device;
  • Nagdagdag ng suporta para sa paggamit ng lzfse algorithm upang i-compress ang mga dmg na imahe. Para sa qcow2 na format, idinagdag ang suporta para sa pagkonekta ng mga external na file ng data. Ang mga operasyon sa pag-unpack ng qcow2 ay inilipat sa isang hiwalay na thread. Nagdagdag ng suporta para sa "blockdev-create" na operasyon sa vmdk images;
  • Ang virtio-blk block device ay nagdagdag ng suporta para sa DISCARD (na nagpapaalam tungkol sa pagpapalabas ng mga block) at WRITE_ZEROES (zeroing sa isang hanay ng mga lohikal na bloke) na operasyon;
  • Ang pvrdma device ay sumusuporta sa RDMA Management Datagram services (MAD);
  • Naisumite pagbabago, lumalabag sa backward compatibility. Halimbawa, sa halip na ang "handle" na opsyon sa "-fsdev" at "-virtfs", dapat mong gamitin ang "local" o "proxy" na mga opsyon. Inalis ang mga opsyon na "-virtioconsole" (pinalitan ng "-device virtconsole"), "-no-frame", "-clock", "-enable-hax" (pinalitan ng "-accel hax"). Inalis ang device na "ivshmem" (dapat gumamit ng "ivshmem-doorbell" at "ivshmem-plain"). Ang suporta para sa pagbuo na may SDL1.2 ay hindi na ipinagpatuloy (kailangan mong gumamit ng SDL2).

Pinagmulan: opennet.ru

Magdagdag ng komento