Ngaleupaskeun émulator QEMU 4.0

Kabentuk release proyék QEMU 4.0. Salaku émulator, QEMU ngidinan Anjeun pikeun ngajalankeun program disusun pikeun hiji platform hardware dina sistem kalawan arsitektur lengkep beda, contona, ngajalankeun hiji aplikasi ARM dina PC x86-cocog. Dina mode virtualisasi di QEMU, kinerja palaksanaan kode dina lingkungan terasing deukeut ka sistem asli alatan palaksanaan langsung parentah dina CPU jeung pamakéan Xen hypervisor atawa modul KVM.

Proyék ieu asalna dijieun ku Fabrice Bellard pikeun nyadiakeun kamampuhan pikeun ngajalankeun executables Linux Ubuntu disusun pikeun platform x86 on arsitéktur non-x86. Leuwih taun pangwangunan, rojongan pikeun emulation pinuh ditambahkeun pikeun 14 arsitéktur hardware, jumlah alat hardware emulated ngaleuwihan 400. Dina Nyiapkeun versi 4.0, leuwih ti 3100 parobahan dijieun tina 220 pamekar.

konci pamutahiranditambahkeun dina QEMU 4.0:

  • Rojongan pikeun ekstensi instruksi ARMv8+ geus ditambahkeun kana émulator arsitektur ARM: SB, PredInv, HPD, LOR, FHM, AA32HPD,
    PAuth, JSConv, CondM, FRINT sareng BTI. Ditambahkeun dukungan pikeun meniru papan Musca sareng MPS2. Ningkatkeun ARM PMU (Power Management Unit) emulation. Ka platform ampir Ditambahkeun kamampuan ngagunakeun langkung ti 255 GB RAM sareng ngadukung gambar u-boot kalayan jinis "noload";

  • Dina émulator arsitéktur x86 dina mesin akselerasi virtualisasi CAIR (Intel Hardware Accelerated Execution) nambihan dukungan pikeun host anu patuh POSIX sapertos Linux sareng NetBSD (saméméhna ngan ukur platform Darwin anu didukung). Dina émulator chipset Q35 (ICH9) pikeun palabuhan PCIe utama, laju maksimum (16GT / s) sareng jumlah jalur sambungan (x32) anu ditetepkeun dina spésifikasi PCIe 4.0 ayeuna tiasa diumumkeun sacara opsional (pikeun mastikeun kasaluyuan, 2.5GT nyaéta dipasang sacara standar pikeun tipe heubeul mesin QEMU / s jeung x1). Kasebut nyaéta dimungkinkeun pikeun ngamuat gambar Xen PVH kalayan pilihan "-kernel";
  • Émulator arsitéktur MIPS parantos nambihan dukungan pikeun émulasi multi-threaded nganggo generator kode TCG (Tiny Code Generator). Ogé ditambahkeun rojongan pikeun emulation of CPU I7200 (nanoMIPS32 Isa) jeung I6500 (MIPS64R6 Isa), kamampuhan pikeun ngolah requests tipe CPU ngagunakeun QMP (QEMU Manajemén Protocol), rojongan ditambahkeun pikeun SAARI na SAAR registers konfigurasi. Ningkatkeun kinerja mesin virtual sareng jinis Fulong 2E. Palaksanaan diropéa tina Unit Komunikasi Interthread;
  • Dina émulator arsitéktur PowerPC, rojongan pikeun emulating XIVE ngaganggu controller geus ditambahkeun, rojongan pikeun POWER9 geus dimekarkeun, sarta pikeun runtuyan P, kamampuhan pikeun panas colokan PCI host sasak (PHB, PCI host sasak) geus ditambahkeun. Perlindungan ngalawan serangan Spectre sareng Meltdown diaktipkeun sacara standar;
  • Rojongan pikeun PCI na USB emulation geus ditambahkeun kana émulator arsitéktur RISC-V. Pangladén debugging anu diwangun (gdbserver) ayeuna ngadukung netepkeun daptar daptar dina file XML. Ditambahkeun dukungan pikeun widang mstatus TSR, TW sareng TVM;
  • Émulator arsitéktur s390 parantos nambihan dukungan pikeun modél CPU z14 ga 2, kitu ogé dukungan pikeun ekstensi instruksi emulating pikeun operasi floating point sareng vektor. Kamampuh alat hot-plug geus ditambahkeun kana vfio-ap;
  • Émulator prosésor kulawarga Tensilica Xtensa parantos ningkatkeun dukungan SMP pikeun Linux sareng nambihan dukungan pikeun FLIX (Extension instruksi panjang fleksibel);
  • Pilihan '-display spice-app' parantos ditambahkeun kana antarmuka grafis pikeun ngonpigurasikeun sareng ngaluncurkeun versi klien aksés jauh Spice kalayan desain anu sami sareng antarmuka QEMU GTK;
  • Ditambahkeun dukungan pikeun kontrol aksés nganggo pilihan tls-authz/sasl-authz kana palaksanaan server VNC;
  • QMP (QEMU Manajemén Protocol) ditambahkeun rojongan pikeun terpusat / éksternal (Out-of-band) paréntah palaksanaan sarta ngalaksanakeun paréntah tambahan pikeun gawé bareng alat block;
  • Hiji palaksanaan panganteur EDID geus ditambahkeun kana VFIO pikeun mdevs dirojong (Intel vGPUs), ngamungkinkeun Anjeun pikeun ngarobah resolusi layar ngagunakeun xres na yres pilihan;
  • Alat 'xen-disk' anyar geus ditambahkeun pikeun Xen, nu bisa mandiri nyieun backend disk pikeun Xen PV (tanpa aksés ka xenstore). Kinerja backend disk Xen PV parantos ningkat sareng kamampuan pikeun ngarobih ukuran disk parantos ditambah;
  • Diagnostik sareng kamampuan ngalacak parantos dilegaan dina alat blok jaringan, sareng kasaluyuan klien sareng palaksanaan server NBD anu bermasalah parantos ningkat. Ditambahkeun "--bitmap", "--list" sareng "--tls-authz" pilihan pikeun qemu-nbd;
  • Ditambahkeun rojongan pikeun mode PCI IDE ka IDE emulated / via alat;
  • Ditambahkeun dukungan pikeun ngagunakeun algoritma lzfse pikeun niiskeun gambar dmg. Pikeun format qcow2, rojongan pikeun nyambungkeun file data éksternal geus ditambahkeun. operasi unpacking qcow2 dipindahkeun ka thread misah. Ditambahkeun dukungan pikeun operasi "blockdev-create" dina gambar vmdk;
  • Alat block virtio-blk geus ditambahkeun rojongan pikeun DISCARD (informing ngeunaan sékrési blok) jeung WRITE_ZEROES (zeroing sauntuyan blok logis) operasi;
  • Alat pvrdma ngarojong jasa RDMA Manajemén Datagram (MAD);
  • Dikintunkeun parobahan, ngalanggar kasaluyuan mundur. Contona, tinimbang pilihan "cecekelan" dina "-fsdev" jeung "-virtfs", Anjeun kudu make pilihan "lokal" atawa "proxy". Pilihan "-virtioconsole" (diganti ku "-device virtconsole"), "-no-frame", "-jam", "-enable-hax" (diganti ku "-accel hax") dihapus. Dipiceun alat "ivshmem" (kedah ngagunakeun "ivshmem-doorbell" jeung "ivshmem-polos"). Rojongan pikeun ngawangun kalawan SDL1.2 geus dieureunkeun (anjeun kudu make SDL2).

sumber: opennet.ru

Tambahkeun komentar