Izlazak emulatore QEMU 9.0.0.

Predstavljen je izid projekta QEMU 9.0. Kot emulator QEMU omogoča zagon programa, zgrajenega za eno strojno platformo, na sistemu z povsem drugačno arhitekturo, na primer, zagon aplikacije za ARM na x86-compatibilnem računalniku. V načinu virtualizacije v QEMU je zmogljivost izvajanja kode v izoliranem okolju blizu strojni sistem zaradi neposrednega izvajanja ukazov na CPU in vključevanja hipervizorja Xen ali modula KVM v Linuxu, ali modula NVMM v NetBSD.

Projekt je prvotno ustvaril Fabrice Bellard z namenom omogočiti zagon datotek Linux, zgrajenih za platformo x86, na arhitekturah, ki niso x86. Skozi leta razvoja je bila dodana podpora za popolno emulacijo za 14 strojnih arhitektur, število emuliranih strojnih naprav pa je preseglo 400. Pri pripravi različice 9.0 je bilo izvedenih več kot 2700 sprememb od 220 razvijalcev.

Ključne izboljšave, dodane v QEMU 9.0:

  • V gonilniku virtio-blk, ki zagotavlja virtualno blok napravo za virtualnih naprav, je bila dodana podpora za večnivojski sistem čakalnih vrst (multiqueue), ki omogoča ločevanje čakalnih vrst za različne blok naprave za zagotavljanje večnitnega dostopa na večjedrnih sistemih (različne vrste enega diska lahko obravnavajo različni tako vhodni kot izhodni niti).
  • V blok napravi usb-storage je bila dodana podpora za lastnosti 'backend_defaults', 'logical_block_size', 'physical_block_size', 'min_io_size', 'opt_io_size' in 'discard_granularity'.
  • V knjižnico gdbstub, namenjeno oddaljenemu razvoju v GDB z uporabo protokola RSP (Remote Serial Protocol), je bila dodana podpora za način fork-follow, operacijo siginfo:read in prestrezanje sistemskih klicev v uporabniškem prostoru.
  • Gonilniki za predhodno dodelitev pomnilnika (preallocation) so bili prilagojeni za delovanje v večnitnem načinu in zdaj lahko hkrati obravnavajo zahteve iz več niti.
  • V orodja za migracijo virtualnih strojev je bil dodan način 'mapped-ram', ki povečuje učinkovitost ustvarjanja posnetkov virtualnih strojev. Izboljšano je bilo določanje ničelne strani pomnilnika, kar je omogočilo znatno pospešitev migracije neaktivnih virtualnih strojev ob prisotnosti podpore multifd v sistemu. Pri migraciji na osnovi VFIO (Virtual Function I/O) je bila uvedena podpora za ponovni zagon iz shranjenega stanja (checkpoint-restart).
  • Prepisana implementacija ESP SCSI (am53c974/dc390).
  • Dodana je podrška za algoritam šifriranja SM4 i omogućena njegova upotreba u drajveru blok uređaja ‘luks’.
  • U drajver ‘luks’ dodana je podrška za kreiranje i korišćenje datoteka sa sačuvanim LUKS zaglavljem.
  • U emulatoru arhitekture ARM implementirana je podrška za L475E-IOT01A IoT ploče, mp3-an536 (MPS3 sa firmverom AN536) i raspi4b (Raspberry Pi 4 Model B). Dodana je podrška za emulaciju procesorskih ekstenzija ECV (Enhanced Counter Virtualization), NV (Nested Virtualization) i NV2 (Enhanced Nested Virtualization). Proširene su mogućnosti emulatora za Freescale i.MX6, Allwinner R40, Bananapi, Raspberry Pi, npcm7xx i virt.
  • U emulator arhitekture RISC-V dodana je podrška za ekstenzije skupa instrukcija Zacas, amocas, RVA22, Zaamo, Zalrsc i Ztso. U RISC-V je obezbeđena podrška za SMBIOS. Implementirana je podrška za ACPI za SRAT, SLIT, AIA i PLIC. Ažurirana je podrška za RHCT tabele. virtualnim mašinama U emulatoru arhitekture HPPA do verzije 16 ažurirana je firma SeaBIOS-hppa. Maksimalna veličina memorije povećana je sa 3 GB na 3840 MB. Dodana je podrška za opciju ‘—nodefaults’.
  • U emulatoru arhitekture LoongArch dodana je podrška za ubrzanje KVM i implementirana je podrška za vektorska proširenja skupa instrukcija LSX/LASX.
  • U emulatoru arhitekture s390x dodana je podrška za instrukcije CVDG, CVB, CVBY i CVBG. Poboljšana je emulacija LAE (Load Address Extended).
  • U emulator arhitekture 68k dodano je uređaj nubus-virtio-mmio, što omogućava pristup virtio uređajima iz mašine q800.
  • Obezbeđena je izrada sa zastavicom ‘-fzero-call-used-regs’, koja omogućava zaštitu od curenja informacija iz funkcija i smanjuje broj blokova pogodnih za konstrukciju ROP-gadgeta (Return-Oriented Programming) u eksploatima. Takođe je dodana izrada sa zastavicom ‘-ftrivial-auto-var-init=zero’ za automatsku inicijalizaciju svih promenljivih smeštenih na steku sa nultom vrednošću.
  • Za pokretanje QEMU-a sa KVM-om sada je potrebno imati barem Linux kernel 4.4. Za ARM hostove u budućnosti planiraju podizanje ove granice na verziju 4.19. Prekinuta je podrška za korišćenje 32-bitnih Windows sistema kao host operativnih sistema.
  • Dodana je podrška za OpenBSD 7.4.
  • Dostupan je pretraživač Pale Moon 33.1.0.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster