Kutolewa kwa emulator ya QEMU 4.0

Imeundwa kutolewa kwa mradi QEMU 4.0. Kama emulator, QEMU hukuruhusu kuendesha programu iliyokusanywa kwa jukwaa moja la vifaa kwenye mfumo ulio na usanifu tofauti kabisa, kwa mfano, endesha programu ya ARM kwenye PC inayolingana na x86. Katika hali ya uboreshaji katika QEMU, utendakazi wa utekelezaji wa msimbo katika mazingira ya pekee uko karibu na mfumo asilia kutokana na utekelezaji wa moja kwa moja wa maagizo kwenye CPU na matumizi ya moduli ya Xen hypervisor au KVM.

Mradi huo uliundwa awali na Fabrice Bellard ili kuruhusu utekelezaji wa Linux uliojengwa kwa jukwaa la x86 kuendeshwa kwa usanifu usio wa x86. Kwa miaka mingi ya maendeleo, usaidizi kamili wa kuiga umeongezwa kwa usanifu wa vifaa 14, idadi ya vifaa vya kuigwa imezidi 400. Katika maandalizi ya toleo la 4.0, zaidi ya mabadiliko 3100 yamefanywa kutoka kwa watengenezaji 220.

Ufunguo maboreshoimeongezwa katika QEMU 4.0:

  • Usaidizi wa viendelezi vya maagizo vya ARMv8+ umeongezwa kwa kiigaji cha usanifu cha ARM: SB, PredInv, HPD, LOR, FHM, AA32HPD,
    PAuth, JSConv, CondM, FRINT na BTI. Usaidizi ulioongezwa wa kuiga bodi za Musca na MPS2. Uigaji ulioboreshwa wa ARM PMU (Kitengo cha Usimamizi wa Nguvu). Kwa jukwaa nguvu aliongeza uwezo wa kutumia zaidi ya 255 GB ya RAM na usaidizi wa picha za u-boot na aina ya "noload";

  • Katika emulator ya usanifu wa x86 katika injini ya kuongeza kasi ya virtualization HAX (Utekelezaji Ulioharakishwa wa Vifaa vya Intel) umeongeza usaidizi kwa wapangishi wanaotii POSIX kama vile Linux na NetBSD (hapo awali ni jukwaa la Darwin pekee lililotumika). Katika kiigaji cha chipset cha Q35 (ICH9) kwa lango kuu za PCIe, kasi ya juu zaidi (16GT/s) na idadi ya njia za muunganisho (x32) iliyobainishwa katika vipimo vya PCIe 4.0 sasa inaweza kutangazwa kwa hiari (ili kuhakikisha uoanifu, 2.5GT ni iliyosakinishwa kwa chaguo-msingi kwa aina za zamani za mashine za QEMU /s na x1). Inawezekana kupakia picha za Xen PVH na chaguo la "-kernel";
  • Kiigaji cha usanifu cha MIPS kimeongeza usaidizi wa uigaji wa nyuzi nyingi kwa kutumia jenereta ya msimbo ya TCG (Tiny Code Generator) ya kawaida. Pia imeongeza usaidizi wa uigaji wa CPU I7200 (nanoMIPS32 ISA) na I6500 (MIPS64R6 ISA), uwezo wa kushughulikia maombi ya aina ya CPU kwa kutumia QMP (QEMU Management Protocol), usaidizi ulioongezwa kwa rejista za usanidi za SAARI na SAAR. Utendaji ulioboreshwa wa mashine pepe zenye aina ya Fulong 2E. Utekelezaji ulioboreshwa wa Kitengo cha Mawasiliano kati ya Mitambo;
  • Katika kiigaji cha usanifu cha PowerPC, usaidizi wa kuiga kidhibiti cha kukatiza cha XIVE umeongezwa, usaidizi wa POWER9 umepanuliwa, na kwa mfululizo wa P, uwezo wa kuziba madaraja ya mwenyeji wa PCI (PHB, daraja la mwenyeji wa PCI) umeongezwa. Ulinzi dhidi ya mashambulizi ya Specter na Meltdown huwezeshwa kwa chaguo-msingi;
  • Usaidizi wa PCI na uigaji wa USB umeongezwa kwenye kiigaji cha usanifu cha RISC-V. Seva ya utatuzi iliyojengewa ndani (gdbserver) sasa inasaidia kubainisha orodha za rejista katika faili za XML. Usaidizi ulioongezwa kwa maeneo ya mstatus TSR, TW na TVM;
  • Kiigaji cha usanifu cha s390 kimeongeza usaidizi kwa modeli ya z14 GA 2 CPU, na vile vile usaidizi wa kuiga viendelezi vya maagizo kwa hatua zinazoelea na uendeshaji wa vekta. Uwezo wa vifaa vya kuziba moto umeongezwa kwa vfio-ap;
  • Kiigaji cha kichakataji cha familia cha Tensilica Xtensa kimeboresha usaidizi wa SMP kwa Linux na kuongeza usaidizi kwa FLIX (kiendelezi cha maelekezo ya urefu unaobadilika);
  • Chaguo la '-display spice-app' limeongezwa kwenye kiolesura cha picha ili kusanidi na kuzindua toleo la mteja wa ufikiaji wa mbali wa Spice na muundo sawa na kiolesura cha QEMU GTK;
  • Usaidizi ulioongezwa wa udhibiti wa ufikiaji kwa kutumia chaguo za tls-authz/sasl-authz kwenye utekelezaji wa seva ya VNC;
  • QMP (Itifaki ya Usimamizi wa QEMU) iliongeza usaidizi kwa utekelezaji wa amri ya kati / nje (Nje ya bendi) na kutekeleza amri za ziada za kufanya kazi na vifaa vya kuzuia;
  • Utekelezaji wa kiolesura cha EDID umeongezwa kwa VFIO kwa mdev zinazotumika (Intel vGPUs), kukuruhusu kubadilisha mwonekano wa skrini kwa kutumia chaguzi za xres na yres;
  • Kifaa kipya cha 'xen-disk' kimeongezwa kwa ajili ya Xen, ambacho kinaweza kuunda mazingira ya nyuma ya diski kwa Xen PV (bila kufikia xenstore). Utendaji wa backend ya disk ya Xen PV imeongezeka na uwezo wa kubadilisha ukubwa wa disk umeongezwa;
  • Uwezo wa utambuzi na ufuatiliaji umepanuliwa katika vifaa vya kuzuia mtandao, na uoanifu wa mteja na utekelezwaji wa seva wa NBD wenye matatizo umeboreshwa. Imeongeza chaguzi za "--bitmap", "--list" na "--tls-authz" kwenye qemu-nbd;
  • Usaidizi ulioongezwa kwa modi ya PCI IDE kwa IDE iliyoigwa/kupitia kifaa;
  • Usaidizi ulioongezwa wa kutumia algoriti ya lzfse kubana picha za dmg. Kwa umbizo la qcow2, usaidizi wa kuunganisha faili za data za nje umeongezwa. qcow2 shughuli za kufungua huhamishwa hadi kwenye uzi tofauti. Msaada ulioongezwa kwa operesheni ya "blockdev-create" katika picha za vmdk;
  • Kifaa cha kuzuia virtio-blk kimeongeza usaidizi kwa DISCARD (kuarifu kuhusu kutolewa kwa vizuizi) na WRITE_ZEROES (kupunguza sifuri kwa anuwai ya vizuizi vya mantiki);
  • Kifaa cha pvrdma kinasaidia huduma za Datagram za Usimamizi wa RDMA (MAD);
  • Imewasilishwa mabadiliko, kukiuka utangamano wa nyuma. Kwa mfano, badala ya chaguo la "kushughulikia" katika "-fsdev" na "-virtfs", unapaswa kutumia chaguo za "local" au "proksi". Chaguo "-virtioconsole" (ikibadilishwa na "-device virtconsole"), "-no-frame", "-saa", "-enable-hax" (ikibadilishwa na "-accel hax") ziliondolewa. Kifaa kilichoondolewa "ivshmem" (kinapaswa kutumia "ivshmem-doorbell" na "ivshmem-plain"). Usaidizi wa kujenga na SDL1.2 umekatishwa (unahitaji kutumia SDL2).

Chanzo: opennet.ru

Kuongeza maoni