lëshimi i projektit . Si për emulator, QEMU lejon ekzekutimin e një programi të ndërtuar për një platformë harduerike në një sistem me një arkitekturë krejtësisht të ndryshme, për shembull, të ekzekutoni një aplikacion për ARM në një PC të përshtatshëm për x86. Në modalitetin virtualizimit në QEMU, performanca e ekzekutimit të kodit në një mjedis të izoluar është e ngjashme me sistemin natyror për shkak të ekzekutimit të drejtpërdrejtë të instruksioneve në CPU dhe angazhimit të hipervizorit Xen ose modulit KVM.
Fillimi i projektit është bërë nga Fabrice Bellard me qëllim që të mundësojë ekzekutimin e skedarëve të mundësuar për platformën x86 në arkitektura të tjera përveç x86. Gjatë viteve të zhvillimit është shtuar mbështetje për simulimin e plotë për 14 arkitektura harduerike, numri i pajisjeve harduerike të simuluara ka tejkaluar 400. Në përgatitjen e versionit 4.2 janë bërë më shumë se 2200 ndryshime nga 198 zhvillues.
ĂelĂ«sore , tĂ« shtuar nĂ« QEMU 4.2:
- Në gjeneratorin klasik të kodit TCG (Tiny Code Generator) është realizuar mbështetje për plugins për monitorimin e instruksioneve të procesorit dhe adresave në memorie;
- Në drejtorin e pajisjeve të bllokut (Network Block Device) është siguruar një trajtim më efikas i kërkesave për kopjim në lexim (copy-on-read). Kodi i serverit NBD është optimizuar për kopjimin e imazheve të shumta (me boshllëqe). Janë bërë përmirësime të përgjithshme në implementimin e klientit dhe serverit NBD;
- Janë rritur performancat e enkriptimit të disqeve LUKS duke përdorur algoritmin AES-XTS;
- Në vfio-pci është shtuar mbështetje për pronën «failover_pair_id» për të lehtësuar migrimin e pajisjeve VFIO;
- Në virtio-mmio është shtuar mbështetje për standardin virtio-compatible 2 dhe mekanizmin e përcaktuar në specifikimin virtio 1.1 të paketuarve virtuale () për shkëmbimin e të dhënave me pajisjen virtuale të hyrjes/daljes në modalitetin e paketave;
- NĂ« simulatorin e arkitekturĂ«s x86 Ă«shtĂ« shtuar njĂ« lloj i ri makinash tĂ« simuluara «microvm», qĂ« pĂ«rdorin virtio-mmio nĂ« vend tĂ« PCI pĂ«r tĂ« optimizuar performancĂ«n. ĂshtĂ« realizuar mundĂ«sia pĂ«r tĂ« aktivizuar dhe deaktivizuar VMX pĂ«rmes flagjeve «-cpu». ĂshtĂ« shtuar mbĂ«shtetje pĂ«r emulimin e zgjerimeve AVX512 BFloat16. ĂshtĂ« siguruar mbĂ«shtetje pĂ«r modelet e reja tĂ« CPU Denverton (SoC server nĂ« bazĂ« tĂ« Atom), Snowridge dhe Dhyana. ĂshtĂ« stabilizuar mbĂ«shtetja pĂ«r macOS Hypervisor Framework («-accel hvf»);
- NĂ« simulatorin e arkitekturĂ«s ARM Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r emulimin e SoC Aspeed AST2600 («ast2600-evb»). ĂshtĂ« shtuar mbĂ«shtetje pĂ«r teknologjinĂ« Semihosting 2.0 me zgjerime STDOUT_STDERR/EXIT_EXTENDED, e cila lejon pajisjen e simuluar tĂ« pĂ«rdorĂ« stdout, stderr dhe stdin pĂ«r tĂ« krijuar skedarĂ« nĂ« anĂ«n e hostit. NĂ« KVM Ă«shtĂ« shtuar mundĂ«sia pĂ«r tĂ« pĂ«rdorur mĂ« shumĂ« se 256 CPU dhe Ă«shtĂ« siguruar mbĂ«shtetje pĂ«r instruksionet SIMD SVE. NĂ« makinat virtuale me tipin «» Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r lidhjen e nxehtĂ« tĂ« memories. JanĂ« rritur performancat e emulimit duke pĂ«rdorur gjeneratorin e kodit TCG.
- Në emulatorin e arkitekturës PowerPC është shtuar mundësia për të emuluar instrukcionet POWER9 mffsce, mffscrn dhe mffscrni. Në makinat e emuluara "powernv" është shtuar mbështetje për pajisjet sistemike Homer dhe OCC SRAM;
- Në emulatorin e arkitekturës RISC-V është shtuar opsioni "-initrd" dhe mundësia për të parë gjendjen e plotë të arkitekturës në debugger;
- Në emulatorin e arkitekturës s390 është realizuar mbështetje për instrukcionet IEP (Instruction Execution Protection);
- Në emulatorin e arkitekturës 68k është shtuar mundësia fillestare për të emuluar Macintosh Quadro 800 dhe sistemet klasike NeXTcube;
- Në emulatorin e arkitekturës xtensa është shtuar një lloj i ri makinerish të emuluara "virt" dhe është realizuar mbështetje për ABI call0 për emulim në hapësirën e përdoruesit.
Burimi: opennet.ru
