Kutulutsidwa kwa emulator ya QEMU 4.0

Anapangidwa kutulutsidwa kwa polojekiti QEMU 4.0. Monga emulator, QEMU imakulolani kuti muyendetse pulogalamu yopangidwa ndi nsanja imodzi ya hardware pamakina omwe ali ndi zomangamanga zosiyana, mwachitsanzo, kuyendetsa ntchito ya ARM pa PC yogwirizana ndi x86. Mu mawonekedwe a virtualization mu QEMU, machitidwe a code execution kumalo akutali ali pafupi ndi dongosolo lachibadwidwe chifukwa cha kutsata mwachindunji malangizo pa CPU ndi kugwiritsa ntchito Xen hypervisor kapena KVM module.

Pulojekitiyi idapangidwa poyambilira ndi Fabrice Bellard kuti apereke kuthekera koyendetsa ma Linux omwe amapangidwa papulatifomu ya x86 pazomanga zopanda x86. Kwa zaka zachitukuko, chithandizo cha kutsanzira kwathunthu chinawonjezeredwa kwa zomangamanga 14 za hardware, chiwerengero cha zipangizo zamakono zotsanzira zidaposa 400. Pokonzekera 4.0, zosintha zoposa 3100 zinapangidwa kuchokera kwa opanga 220.

Chinsinsi kuwongoleraanawonjezera mu QEMU 4.0:

  • Thandizo lazowonjezera za malangizo a ARMv8+ zawonjezedwa ku emulator yomanga ya ARM: SB, PredInv, HPD, LOR, FHM, AA32HPD,
    PAuth, JSConv, CondM, FRINT ndi BTI. Thandizo lowonjezera pakutsanzira matabwa a Musca ndi MPS2. Kuchita bwino kwa ARM PMU (Power Management Unit) kutsanzira. Ku nsanja mphamvu anawonjezera luso logwiritsa ntchito kuposa 255 GB ya RAM ndikuthandizira zithunzi za u-boot ndi mtundu wa "noload";

  • Mu x86 zomangamanga emulator mu virtualization mathamangitsidwe injini HAX (Intel Hardware Accelerated Execution) idawonjezera thandizo kwa makamu ogwirizana ndi POSIX monga Linux ndi NetBSD (poyamba nsanja ya Darwin yokha idathandizidwa). Mu Q35 chipset emulator (ICH9) pamadoko akulu a PCIe, kuthamanga kwambiri (16GT/s) ndi kuchuluka kwa mizere yolumikizira (x32) yofotokozedwa mu PCIe 4.0 tsopano zitha kulengezedwa mwakufuna (kuwonetsetsa kuti zikugwirizana, 2.5GT ndi zoyikidwa mwachisawawa zamitundu yakale yamakina a QEMU /s ndi x1). Ndizotheka kukweza zithunzi za Xen PVH ndi "-kernel" njira;
  • Emulator yomanga ya MIPS yawonjezera chithandizo cha kutsanzira kwamitundu yambiri pogwiritsa ntchito jenereta yamtundu wa TCG (Tiny Code Generator). Anawonjezeranso kuthandizira kutsanzira kwa CPU I7200 (nanoMIPS32 ISA) ndi I6500 (MIPS64R6 ISA), kuthekera kochita zopempha zamtundu wa CPU pogwiritsa ntchito QMP (QEMU Management Protocol), kuonjezera chithandizo cha SAARI ndi SAAR kasinthidwe kaundula. Kuchita bwino kwa makina enieni okhala ndi mtundu wa Fulong 2E. Kukhazikitsidwa kosinthidwa kwa Interthread Communication Unit;
  • Mu emulator yomanga ya PowerPC, chithandizo chotsanzira chowongolera chosokoneza cha XIVE chawonjezedwa, kuthandizira kwa POWER9 kwakulitsidwa, ndipo pamndandanda wa P, kuthekera koyika milatho yotentha ya PCI (PHB, PCI host bridge) yawonjezedwa. Chitetezo ku kuukira kwa Specter ndi Meltdown kumathandizidwa mwachisawawa;
  • Thandizo la kutsanzira kwa PCI ndi USB lawonjezeredwa ku emulator yomanga ya RISC-V. Seva yopangira zolakwika (gdbserver) tsopano imathandizira ndandanda yolembetsa mumafayilo a XML. Thandizo lowonjezera la minda ya mstatus TSR, TW ndi TVM;
  • Emulator ya zomangamanga ya s390 yawonjezera chithandizo cha chitsanzo cha z14 GA 2 CPU, komanso kuthandizira kutsanzira zowonjezera za malangizo pa malo oyandama ndi ma vector. Kuthekera kwa zida zamagetsi zotentha zawonjezeredwa ku vfio-ap;
  • The Tensilica Xtensa Family processor emulator yathandizira thandizo la SMP la Linux ndikuwonjezera chithandizo cha FLIX (Flexible length malangizo extension);
  • Njira ya '-display spice-app' yawonjezedwa ku mawonekedwe azithunzi kuti mukonze ndikuyambitsa mtundu wa kasitomala wofikira kutali wa Spice wokhala ndi mawonekedwe ofanana ndi mawonekedwe a QEMU GTK;
  • Thandizo lowonjezera pakuwongolera kugwiritsa ntchito njira za tls-authz/sasl-authz pakukhazikitsa seva ya VNC;
  • QMP (QEMU Management Protocol) inawonjezera thandizo la lamulo lapakati / lakunja (Kunja kwa gulu) ndikukhazikitsa malamulo owonjezera ogwirira ntchito ndi zida za block;
  • Kukhazikitsidwa kwa mawonekedwe a EDID kwawonjezeredwa ku VFIO kwa ma mdev othandizidwa (Intel vGPUs), kukulolani kuti musinthe mawonekedwe azithunzi pogwiritsa ntchito njira za xres ndi yres;
  • Chipangizo chatsopano cha 'xen-disk' chawonjezedwa ku Xen, chomwe chimatha kupanga diski kumbuyo kwa Xen PV (popanda kupeza xenstore). Kuchita kwa Xen PV disk backend kwawonjezeka ndipo kuthekera kosintha kukula kwa disk kwawonjezeredwa;
  • Kuzindikira ndi kutsata kutsata kwakulitsidwa pazida zama netiweki, ndipo kuyanjana kwamakasitomala ndi zovuta za seva ya NBD kwasinthidwa. Zowonjezera "--bitmap", "--list" ndi "--tls-authz" zosankha ku qemu-nbd;
  • Thandizo lowonjezera la mawonekedwe a PCI IDE ku IDE / kudzera pa chipangizo;
  • Zowonjezera zothandizira kugwiritsa ntchito algorithm ya lzfse kupondaponda zithunzi za dmg. Pa mtundu wa qcow2, chithandizo cholumikizira mafayilo akunja a data yawonjezedwa. qcow2 ntchito zotsegula zimasunthidwa ku ulusi wina. Thandizo lowonjezera la "blockdev-create" pazithunzi za vmdk;
  • Chipangizo chotchinga cha virtio-blk chawonjezera chithandizo cha DISCARD (chidziwitso cha kutulutsidwa kwa midadada) ndi WRITE_ZEROES (kutsitsa ma block angapo omveka);
  • Chipangizo cha pvrdma chimathandizira mautumiki a RDMA Management Datagram (MAD);
  • Zatumizidwa kusintha, kuphwanya kugwirizana mmbuyo. Mwachitsanzo, m'malo mwa "hand" mu "-fsdev" ndi "-virtfs", muyenera kugwiritsa ntchito "local" kapena "proxy". Zosankha "-virtioconsole" (zosinthidwa ndi "-device virtconsole"), "-no-frame", "-clock", "-enable-hax" (m'malo mwa "-accel hax") zinachotsedwa. Chipangizo chochotsedwa "ivshmem" (chiyenera kugwiritsa ntchito "ivshmem-doorbell" ndi "ivshmem-plain"). Thandizo lomanga ndi SDL1.2 lathetsedwa (muyenera kugwiritsa ntchito SDL2).

Source: opennet.ru

Kuwonjezera ndemanga