projektin julkaisu . Emulaattorina QEMU mahdollistaa yhdelle laitteistoalustalle käännetyn ohjelman suorittamisen järjestelmässä, jossa on täysin erilainen arkkitehtuuri, esimerkiksi ARM-sovellusta x86-yhteensopivalla PC:llä. QEMU:n virtualisointitilassa koodin suoritus eristetyssä ympäristössä on lähellä alkuperäistä järjestelmää, koska käskyt suoritetaan suoraan suorittimessa ja Xen-hypervisor- tai KVM-moduulia käytetään.
Fabrice Bellard loi projektin alun perin mahdollistaakseen x86-alustalle käännettyjen suoritettavien tiedostojen suorittamisen. Linux muille arkkitehtuureille kuin x86. Kehitysvuosien aikana täyden emuloinnin tuki lisättiin 14 laitteistoarkkitehtuurille, ja emuloitujen laitteistojen määrä ylitti 400. Versiota 5.1 valmisteltaessa tehtiin yli 1 700 muutosta 235 kehittäjältä.
Avain lisätty QEMU 5.1:ssä:
- Lisätty tuki arkkitehtuuripohjaiselle CPU-emulaatiolle Tuki Arduino Duemilanove (ATmega168)- ja Arduino Mega 2560 (ATmega2560) -piireille on otettu käyttöön.
Arduino Mega (ATmega1280) ja Arduino UNO (ATmega328P). - ARM-arkkitehtuuriemulaattori tukee nyt muistin (nvdimm) hot-irrotusta ja hot-pluggausta ACPI-vierasjärjestelmissä. Tuki ARMv8.2-laajennuksille on otettu käyttöön. и Sonorapass-bmc-korttia on tuettu.
- MIPS-arkkitehtuuriemulaattoriin on lisätty tuki Loongson 3A -suorittimille (R1 ja R4). FPU- ja MSA-käskyjen emuloinnin suorituskykyä on parannettu.
- RISC-V-arkkitehtuuriemulaattoriin on lisätty tuki SiFive E34- ja Ibex-suorittimille. Tuki HiFive1 revB- ja OpenTitan-emolevyille on toteutettu. Spike-koneille on lisätty tuki useille suorittimille.
- PowerPC-arkkitehtuuriemulaattori tukee nyt virheiden palautumista vierasjärjestelmissä FWNMI:n avulla.
- s390-arkkitehtuuriin on lisätty KVM-tuki turvalliselle virtualisoinnille (suojattu suoritustila).
- X86-arkkitehtuuriemulaattori on vähentänyt virtualisoimattomien vierasjärjestelmien yleiskustannuksia Windows, tarjoamalla ACPI WAET -emuloitu laitetaulukko (Windows ACPI-emuloitujen laitteiden taulukko). Parannettu kiihdytyksen tuki. varten macOS.
- Lohkolaiteohjain tukee nyt virtuaalisia tallennuslaitteita, joiden loogiset ja fyysiset lohkot ovat 2 Mt:n kokoisia.
- Lisätty mahdollisuus siirtää salasanoja ja avaimia QEMU:hun ytimen avainnipun kautta. Linux käyttämällä uudentyyppisiä "salainen avainrengas" -objekteja.
- Qcow2-muodolle on toteutettu tuki zstd-pakkausalgoritmille.
- qemu-img-apuohjelmassa on uusi 'bitmap'-komento pysyvien bittikarttojen käsittelyyn qcow2-tiedostoissa. qemu-img toteuttaa myös LUKS-avaintenhallinnan (keyslot) ja tarjoaa lisäominaisuuksia komennoille "map" (--start-offset, --max-length) ja "convert" (--bitmaps). Komento "measure" näyttää nyt tietoa pysyvien bittikarttojen koosta qcow2-tiedostoissa.
- NVMe-ajuri tukee nyt pysyviä muistialueita (Persistent Memory Regions), jotka esiteltiin NVMe 1.4 -spesifikaatiossa.
- Klassista TCG (Tiny Code Generator) -koodigeneraattoria käyttäville vierasjärjestelmille on toteutettu prosessien käyttömahdollisuus. , mukaan lukien virtiofsd. VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS-laajennus on lisätty vhost-user-käyttöjärjestelmään, mikä mahdollistaa yli kahdeksan RAM-muistipaikan rekisteröinnin.
Lähde: opennet.ru
