QEMU 5.2 dolazi s poboljšanjima za RISC-V, promjenom kompajlera i mnogim drugim

QEMU

QEMU 5.2 je objavljen , a ova nova verzija uključuje preko 3200 promjena od 216 programera , uključujući podršku za migraciju uživo za RISC-V, eksperimentalnu podršku za RISC-V hipervizor, podršku za više ploča i još mnogo toga.

Za one koji nisu upoznati sa QEMU-om, to je emulator koji vam omogućava pokretanje programa kreiranog za jednu hardversku platformu na sistemu sa potpuno drugačijom arhitekturom , na primjer, pokretanje ARM aplikacije na x86 kompatibilnom računaru.

U načinu virtualizacije u QEMU-u, performanse pokrenutog koda u izoliranom okruženju bliske su hardverskom sistemu zbog izravnog izvršavanja uputa na CPU-u i upotrebe Xen hipervizora ili KVM modula.

Glavne vijesti QEMU 5.2

Sistem izgradnje se promijenio; kompajliranje QEMU-a sada zahtijeva instalaciju ninja alata.

Dodana je podrška za upravljački program blok uređaja koji koristi proces qemu-storage-daemon u pozadini kao backend za vhost-user-blk, kao i nova QMP naredba 'block-export-add', koja zamjenjuje naredbu 'nbd-server-add' i pruža podršku za 'qemu-storage-daemon'.

Za qcow2 slike dodana je podrška za proširene L2 registre, što omogućava dodjelu prostora nepotpunim grupama (podklasterima). Da biste omogućili L2 prilikom kreiranja slike, morate navesti opciju "extended_l2 = on".

Također je vrijedna pažnje poboljšana podrška za korištenje qemu-a kao NBD klijenta, jer smanjuje broj situacija koje dovode do isteka vremena prilikom razmjene podataka preko mreže, uzrokujući blokiranje gosta. Qemu-nbd pruža mogućnost specificiranja više opcija '-B ime' za istovremeno specificiranje više prljavih bitmapa.

Još jedna važna promjena je novi visokoperformansni način migracije sa šifriranim prijenosom podataka korištenjem TLS-a i multifd-a. Zadano ograničenje propusnosti migracije povećano je na 1 Gbps.

Dodan je parametar migracije 'block-bitmap-mapping', koji omogućava detaljniju kontrolu nad bitmapama koje se prenose tokom migracije. Ovaj parametar radi čak i ako se nazivi hostova razlikuju od izvora na prijemnoj strani.

Pored toga, dodani su novi pozivi 'calc-dirty-rate' i 'query-dirty-rate' za predviđanje brzine ažuriranja tokom migracije, uzimajući u obzir opterećenje povezano s operacijama u RAM-u.

Također ćemo pronaći podršku za ploče mp2-an386, mp2-an500, raspi3ap (Raspberry Pi 3 model A+), raspi0 (Raspberry Pi Zero), raspi1ap (Raspberry Pi A+) i npcm750-evb/quanta-gsj.

Za arhitekturu AArch32 implementirana je podrška za ARMv8.2 FEAT_FP16 (srednje precizna tačka plivanja).

Konačno, spominju se i nove opcije za virtiofsd za kontrolu renderiranja proširenih imena atributa xattr na gostujućem sistemu, odvojeno povezivanje particija s različitim tačkama montiranja na host sistemu, a također i za specificiranje mehanizma izolacije sandboxa koji je alternativa pivot_root.

I podrška za migraciju uživo na emulator RISC-V arhitekture, kao i eksperimentalna podrška za hipervizor za RISC-V ažurirana na verziju 0.6.1. Dodata je podrška za NUMA sockete na virt/Spike sistemima.

Druge značajne promjene u ovoj novoj verziji uključuju:

  • Naredbe guest-get-devices, guest-get-disks i guest-ssh- {get, add-remove} -authorized-keys dodane su u QEMU agent za goste (qemu-ga).
  • Dodata podrška za računovodstvo zasnovano na kvm-krađi.
  • Emulator HPPA arhitekture podržava pokretanje NetBSD-a i vrlo starih Linux distribucija, kao što su Debian 0.5 i 0.6.1.
  • PowerPC emulator arhitekture poboljšao je podršku za korisnički definirani razmak za NUMA topologiju.
  • Emulator arhitekture s390 za KVM dodao je podršku za dijagnostičke upute 0x318.
  • Klasični generator koda TCG (Tiny Code Generator) implementira podršku za dodatne z14 upute.
  • Na vfio-pci uređajima, umjesto emuliranih funkcija, pružaju se informacije o stvarnoj funkcionalnosti računara.
  • Emulator arhitekture Xtensa dodaje podršku za DFPU koprocesor s opcijskim kodovima s pomičnom zarezom s jednostrukom i dvostrukom preciznošću.

Dodaj kao preferirani izvor na Googleu