projektets release . Som emulator möjliggör QEMU att köra program som Àr byggda för en hÄrdvaruplattform pÄ ett system med helt annan arkitektur, till exempel köra en applikation för ARM pÄ en x86-kompatibel PC. I virtualiseringslÀget Àr exekveringsprestandan av koden i en isolerad miljö nÀra den inhemska systemets prestanda genom direkt exekvering av instruktioner pÄ CPU och anvÀndning av hypervisorn Xen eller KVM-modulen.
Projektet skapades ursprungligen av Fabrice Bellard för att möjliggöra körning av Linux-exekverbara filer som Àr byggda för x86-plattformen pÄ andra arkitekturer Àn x86. Under Ären har stöd för fullstÀndig emulering av 14 hÄrdvaruarkitekturer lagts till, och antalet emulerade hÄrdvaruenheter har överstigit 400. Vid förberedelsen av version 5.0 gjordes mer Àn 2800 Àndringar av 232 utvecklare.
Nyckel , tillagda i QEMU 5.0:
- Möjlighet att föra över delar av vÀrddatorns filsystem till gÀstsystemet med hjÀlp av . GÀstsystemet kan montera en katalog markerad för export pÄ vÀrdsystemet, vilket avsevÀrt förenklar organiseringen av delad Ätkomst till kataloger i virtualiseringssystem. Till skillnad frÄn anvÀndningen av nÀtverksfilsystem som NFS och virtio-9P, möjliggör virtiofs prestanda nÀra ett lokalt filsystem;
- live-migrering av data frÄn externa processer som anvÀnder QEMU D-Bus;
- Möjlighet att anvÀnda för att driva gÀstsystemets huvudsakliga RAM. Bakgrunden stÀlls in med alternativet "-machine memory-backend";
- Ny filter "compress" som kan anvÀndas för att skapa komprimerade sÀkerhetskopior av bilder;
- Kommandot "qemu-img measure" kan nu arbeta med LUKS-bilder, och kommandot "qemu-img convert" har fĂ„tt alternativet "âtarget-is-zero" för att hoppa över nollstĂ€llning av mĂ„lbilden;
- Experimentellt stöd har lagts till för processen qemu-storage-daemon, vilket ger tillgÄng till blocknivÄn i QEMU och QMP-kommandon, inklusive arbete med blockenheter och en inbyggd NBD-server, utan behov av att köra en fullstÀndig virtuell maskin;
- I emulatören för ARM-arkitektur har möjligheten att emulera CPU Cortex-M7 lagts till och stöd för tacoma-bmc, Netduino Plus 2 och Orangepi PC har sÀkerstÀllts. I de emulerade maskinerna "virt" har stöd för vTPM-enheter och virtio-iommu lagts till. AnvÀndning av AArch32 vÀrdsystem för att köra KVM-gÀstmiljöer har avklassificerats. Stöd för emulering av följande arkitekturfunktioner har implementerats:
- ARMv8.1: VHE, VMID16, PAN, PMU
- ARMv8.2: UAO, DCPoP, ATS1E1, TTCNP
- ARMv8.3: RCPC, CCIDX
- ARMv8.4: PMU, RCPC
- I emulatören för HPPA-arkitektur har stöd för grafisk konsol med anvÀndning av grafikenheten HP Artist lagts till;
- MIPS-arkitekturens emulator har fÄtt stöd för instruktionen GINVT (Global Invalidation TLB);
- I PowerPC-emulatorn för âpowernvâ-maskiner har emulering av hĂ„rdvaruaccelerationsverktygen KVM lagts till för att köra gĂ€stsystem.
KVM med klassisk TCG (Tiny Code Generator). Stöd för filbaserad NVDIMM har lagts till för emulering av icke-flyktigt minne. För âpseriesâ-maskiner har behovet av omstart tagits bort för att synkronisera arbetet med avbrottskontrollerna XIVE/XICS i lĂ€get 'ic-mode=dual'; - I RISC-V-emulatorn för âvirtâ och âsifive_uâ-kort har stöd för standarddrivrutiner syscon i Linux för strömhantering och omstart implementerats. För âvirtâ-kortet har stöd för Goldfish RTC lagts till. En experimentell implementering av hypervisorutvidgningar har lagts till;
- I s390-arkitekturens emulator har stöd för AIS (Adapter Interrupt Suppression) lagts till vid arbete i KVM-lÀget.
KĂ€lla: opennet.ru
