Paglabas ng QEMU 4.1 emulator

Ipinasa ni pagpapalabas ng proyekto QEMU 4.1. Bilang isang emulator, pinapayagan ka ng QEMU na magpatakbo ng isang program na pinagsama-sama para sa isang platform ng hardware sa isang system na may ganap na naiibang arkitektura, halimbawa, magpatakbo ng isang ARM application sa isang x86-compatible na PC. Sa virtualization mode sa QEMU, ang pagganap ng code execution sa isang nakahiwalay na kapaligiran ay malapit sa native system dahil sa direktang pagpapatupad ng mga tagubilin sa CPU at ang paggamit ng Xen hypervisor o KVM module.

Ang proyekto ay orihinal na nilikha ni Fabrice Bellard upang magbigay ng kakayahang magpatakbo ng mga Linux executable na pinagsama-sama para sa x86 platform sa mga hindi x86 na arkitektura. Sa paglipas ng mga taon ng pag-unlad, ang suporta para sa buong pagtulad ay idinagdag para sa 14 na arkitektura ng hardware, ang bilang ng mga emulated na hardware na aparato ay lumampas sa 400. Sa paghahanda ng bersyon 4.1, higit sa 2000 mga pagbabago ang ginawa mula sa 276 na mga developer.

Susi mga pagpapabutiidinagdag sa QEMU 4.1:

  • Ang suporta para sa mga modelo ng Hygon Dhyana at Intel SnowRidge CPU ay idinagdag sa x86 architecture emulator. Nagdagdag ng emulation ng RDRAND extension (hardware pseudo-random number generator). Nagdagdag ng mga flag
    md-clear at mds-no upang kontrolin ang proteksyon ng pag-atake MDS (Microarchitectural Data Sampling) sa mga processor ng Intel. Idinagdag ang kakayahang matukoy ang integrated circuit topologies gamit ang flag na β€œ-smp ...,dies=”. Ang pag-bersyon ay ipinatupad para sa lahat ng x86 na modelo ng CPU;

  • Ang SSH block driver ay inilipat mula sa paggamit libssh2 sa libsh;
  • Ang virtio-gpu driver (virtual GPU na binuo bilang bahagi ng proyekto Virgil) nagdagdag ng suporta para sa paglipat ng 2D/3D rendering operations sa isang panlabas na proseso ng vhost-user (halimbawa, vhost-user-gpu);
  • Ang ARM architecture emulator ay nagdagdag ng suporta para sa extension ng ARMv8.5-RNG para sa pagbuo ng mga pseudo-random na numero. Ang suporta para sa FPU emulation ay ipinatupad para sa Cortex-M family chips at ang mga problema sa FPU emulation para sa Cortex-R5F ay nalutas na. Isang bagong sistema para sa pagtatakda ng mga opsyon sa pagbuo, na idinisenyo sa istilong Kconfig, ay iminungkahi. Para sa SoC Exynos4210, idinagdag ang suporta para sa mga PL330 DMA controllers;
  • Pinahusay ng MIPS architecture emulator ang suporta para sa mga tagubilin ng MSA ASE kapag gumagamit ng big-endian byte order at inihanay ang paghawak ng dibisyon sa pamamagitan ng zero na mga kaso sa reference na hardware. Ang pagganap ng pagtulad ng mga tagubilin ng MSA para sa mga kalkulasyon ng integer at pagpapatakbo ng permutation ay nadagdagan;
  • Sinusuportahan na ngayon ng PowerPC architecture emulator ang pagpapasa sa mga NVIDIA V100/NVLink2 GPU gamit ang VFIO. Para sa mga pseries, ang acceleration ng XIVE interrupt controller emulation ay ipinatupad at ang suporta para sa hot plugging ng PCI bridges ay naidagdag. Ang mga pag-optimize ay ginawa sa pagtulad ng mga tagubilin sa vector (Altivec/VSX);
  • Ang isang bagong modelo ng hardware ay idinagdag sa RISC-V architecture emulator - "spike". Nagdagdag ng suporta para sa ISA 1.11.0. Ang 32-bit system call ABI ay pinahusay, hindi wastong pangangasiwa sa pagtuturo ay pinahusay, at ang built-in na debugger ay napabuti. Nagdagdag ng suporta para sa topology ng CPU sa device tree;
  • Ang s390 architecture emulator ay nagdagdag ng suporta para sa pagtulad sa lahat ng mga tagubilin sa vector ng pangkat na "Vector Facility" at nagdagdag ng mga karagdagang elemento upang suportahan ang mga gen15 system (kabilang ang karagdagang suporta para sa AP Queue Interruption Facility para sa vfio-ap). Ipinatupad ang suporta ng BIOS para sa pag-boot mula sa ECKD DASD na nakatali sa guest system sa pamamagitan ng vfio-ccw;
  • Sa SPARC architecture emulator para sa mga sun4m system, ang mga problema sa paggamit ng flag na "-vga none" para sa OpenBIOS ay nalutas na;
  • Ang Tensilica Xtensa family processor emulator ay may kasamang mga opsyon para sa MPU (memory protection unit) at eksklusibong access;
  • Ang opsyong "-salvage" ay idinagdag sa command na "qemu-img convert" upang hindi paganahin ang pag-crash ng proseso ng conversion ng imahe kung sakaling magkaroon ng mga error sa I/O (halimbawa, maaaring magamit upang ibalik ang bahagyang nasira na mga qcow2 file). Sa isang team
    Gumagana ang "qemu-img rebase" kapag ang isang backing file ay hindi pa nagagawa para sa input file;

  • Idinagdag ang kakayahang mag-redirect ng output na nakaayos gamit ang teknolohiyang "semihosting" (pinapayagan ang emulated device na gumamit ng stdout, stderr at stdin upang lumikha ng mga file sa host side) sa chardev backend ("-semhosting-config enable=on,target=native ,chardev=[ ID]");
  • Sinusuportahan na ngayon ng VMDK block driver ang seSparse subformat sa read-only na mode;
  • Nagdagdag ng suporta para sa SiFive GPIO controller sa GPIO emulation driver.

Pinagmulan: opennet.ru

Magdagdag ng komento