Atolotra ny famoahana ny tetikasa QEMU 8.0. Amin'ny maha-emulator azy, ny QEMU dia ahafahanao mampandeha programa natsangana ho an'ny sehatra hardware iray amin'ny rafitra iray manana maritrano hafa tanteraka, ohatra, mampandeha fampiharana ARM amin'ny PC mifanentana amin'ny x86. Ao amin'ny fomba virtoaly ao amin'ny QEMU, ny fanatanterahana ny famonoana kaody amin'ny tontolo mitoka-monina dia manakaiky ny rafitra hardware noho ny fanatanterahana mivantana ny torolΓ lana momba ny CPU sy ny fampiasana ny Xen hypervisor na KVM module.
Ny tetikasa dia noforonin'i Fabrice Bellard tany am-boalohany mba hamela ny Linux executable natsangana ho an'ny sehatra x86 mba hihazakazaka amin'ny maritrano tsy x86. Nandritra ny taona maro nisian'ny fampandrosoana, dia nampiana fanohanana feno emulation ho an'ny architectures hardware 14, mihoatra ny 400 ny isan'ny fitaovana emulated hardware. Ho fanomanana ny version 8.0, mihoatra ny 2800 ny fanovana natao tamin'ny developer 238.
Fanatsarana lehibe nampiana tao amin'ny QEMU 8.0:
- ΠΠ±ΡΡΠ²Π»Π΅Π½Π° ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅ΠΉ ΠΈ Π² ΡΠΊΠΎΡΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΠΌΡΠ»ΡΡΠΈΠΈ (Π·Π°ΠΏΡΡΠΊ ΠΠ‘ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Ρ ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠΎΠ² KVM ΠΈ Xen) Π½Π° 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ Ρ ΠΎΡΡΠ°Ρ Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ x86. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΌΡΠ»ΡΡΠΈΠΈ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ user-mode (Π·Π°ΠΏΡΡΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΡΠΎΠ±ΡΠ°Π½Π½ΡΡ Π΄Π»Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ CPU) Π½Π° 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ Ρ ΠΎΡΡΠ°Ρ x86 Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π°.
- Π ΡΠΌΡΠ»ΡΡΠΎΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ x86 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π·Π°ΠΏΡΡΠΊΠ° Π³ΠΎΡΡΠ΅Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌ Xen Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° KVM ΠΈ ΡΠ΄Π΅Ρ Linux 5.12+.
- Π ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ΅ ΠΊΠΎΠ΄Π° TCG Π΄Π»Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ x86 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° CPUID-ΡΠ»Π°Π³ΠΎΠ² FSRM, FZRM, FSRS ΠΈ FSRC. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ CPU Intel Sapphire Rapids (Intel 7).
- Π ΡΠΌΡΠ»ΡΡΠΎΡΠ΅ ARM ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° CPU Cortex-A55 ΠΈ Cortex-R52, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ ΡΠΈΠΏ ΡΠΌΡΠ»ΠΈΡΡΠ΅ΠΌΡΡ ΠΌΠ°ΡΠΈΠ½ Olimex STM32 H405, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ FEAT_EVT (Enhanced Virtualization Traps), FEAT_FGT (Fine-Grained Traps) ΠΈ AArch32 ARMv8-R. Π gdbstub Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² Π΄Π»Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ M-ΠΏΡΠΎΡΠΈΠ»Ρ (ΠΏΡΠΎΡΠΈΠ»Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ²).
- Π ΡΠΌΡΠ»ΡΡΠΎΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ RISC-V ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΌΡΠ»ΠΈΡΡΠ΅ΠΌΡΡ ΠΌΠ°ΡΠΈΠ½ OpenTitan, PolarFire ΠΈ OpenSBI. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π½Π°Π±ΠΎΡΠΎΠ² ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ (ISA) ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ: Smstateen, ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠ΅ ΡΡΡΡΡΠΈΠΊΠΈ icount, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΠΊΡΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠΈΡ PMU Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ACPI, ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Zawrs, Svadu, T-Head ΠΈ Zicond.
- Π ΡΠΌΡΠ»ΡΡΠΎΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ HPPA Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ fid (Floating-Point Identify ΠΈ ΡΠ»ΡΡΡΠ΅Π½Π° ΡΠΌΡΠ»ΡΡΠΈΡ Π² 32-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
- Π ΡΠΌΡΠ»ΡΡΠΎΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ 390x ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΎΡΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ΅ Π·Π°ΡΠΈΡΡΠ½Π½ΡΡ Π³ΠΎΡΡΠ΅Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌ KVM. Π£Π»ΡΡΡΠ΅Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΎΠ±ΡΠ°ΡΡΠ²Π°Π΅ΠΌΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² zPCI.
- Π ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ΅ virtio-mem, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π³ΠΎΡΡΡΠ΅Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌ ΠΌΠ°ΡΠΈΠ½Π°ΠΌ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡΠ΅Π΅ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ² (preallocation) ΠΏΡΠΈ live-ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ.
- Π VFIO (Virtual Function I/O) ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ (Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Π° Π²ΡΠΎΡΠ°Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ).
- Π Π±Π»ΠΎΡΠ½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ qemu-nbd ΠΏΠΎΠ²ΡΡΠ΅Π½Π° ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎΠ²Π΅ΡΡ TCP ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ TLS.
- Π Π°Π³Π΅Π½Ρ Π΄Π»Ρ Π³ΠΎΡΡΠ΅Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenBSD ΠΈ NetBSD.
Source: opennet.ru