Выпуск эмулятора QEMU 6.1

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ Ρ€Π΅Π»ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° QEMU 6.1. Π’ качСствС эмулятора QEMU позволяСт Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΡΠΎΠ±Ρ€Π°Π½Π½ΡƒΡŽ для ΠΎΠ΄Π½ΠΎΠΉ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π½Π° систСмС с ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΈΠ½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для ARM Π½Π° x86-совмСстимом ПК. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² QEMU ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ выполнСния ΠΊΠΎΠ΄Π° Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π±Π»ΠΈΠ·ΠΊΠ° ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ систСмС Π·Π° счёт прямого выполнСния инструкций Π½Π° CPU ΠΈ задСйствования Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° Xen ΠΈΠ»ΠΈ модуля KVM.

Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π±Ρ‹Π» создан Ѐабрисом Π‘Π΅Π»Π»Π°Ρ€ΠΎΠΌ (Fabrice Bellard) с Ρ†Π΅Π»ΡŒΡŽ обСспСчСния возмоТности запуска собранных для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ x86 исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ² Linux Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ…, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ x86. Π—Π° Π³ΠΎΠ΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±Ρ‹Π»Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠΎΠ»Π½ΠΎΠΉ эмуляции для 14 Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€, число эмулируСмых Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… устройств прСвысило 400. ΠŸΡ€ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ вСрсии 6.1 внСсСно Π±ΠΎΠ»Π΅Π΅ 3000 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΡ‚ 221 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π² QEMU 6.1:

  • Π’ QMP (QEMU Machine Protocol) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° «blockdev-reopen» для измСнСния настроСк ΡƒΠΆΠ΅ созданного Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ устройства.
  • Π’ качСствС ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° задСйствован gnutls, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π΅ΠΆΠ°Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π Π°Π½Π΅Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π²ΡˆΠΈΠΉΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π½Π° основС libgcrypt ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Ρ‘Π½ Π² разряд ΠΎΠΏΡ†ΠΈΠΉ, Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π½Π° Π±Π°Π·Π΅ nettle оставлСн ΠΊΠ°ΠΊ запасной Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, примСняСмый ΠΏΡ€ΠΈ отсутствии GnuTLS ΠΈ Libgcrypt.
  • Π’ эмулятор I2C Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° PMBus ΠΈ I2C-ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΎΡ€ΠΎΠ² (pca9546, pca9548).
  • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² ΠΊ классичСскому Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ ΠΊΠΎΠ΄Π° TCG (Tiny Code Generator). Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ execlog (ΠΆΡƒΡ€Π½Π°Π» исполнСния) ΠΈ cache modelling (симуляция повСдСния кэша L1 Π² CPU).
  • Π’ эмулятор ARM Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ»Π°Ρ‚ Π½Π° Π±Π°Π·Π΅ Ρ‡ΠΈΠΏΠΎΠ² Aspeed (rainier-bmc, quanta-q7l1), npcm7xx (quanta-gbs-bmc) ΠΈ Cortex-M3 (stm32vldiscovery). Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… Π΄Π²ΠΈΠΆΠΊΠΎΠ² ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Ρ…ΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, прСдоставляСмых Π² Ρ‡ΠΈΠΏΠ°Ρ… Aspeed. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° эмуляции инструкций SVE2 (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ bfloat16), ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² для умноТСния ΠΌΠ°Ρ‚Ρ€ΠΈΡ† ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ сброса Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ассоциативной трансляции (TLB).
  • Π’ эмуляторС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ PowerPC для эмулируСмых машин «pseries» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° опрСдСлСния сбоСв ΠΏΡ€ΠΈ горячСм ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ устройств Π² Π½ΠΎΠ²Ρ‹Ρ… гостСвых окруТСниях, ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ Π»ΠΈΠΌΠΈΡ‚ Π½Π° число CPU ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° эмуляция Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… инструкций, спСцифичных для процСссоров POWER10. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ»Π°Ρ‚ Π½Π° Π±Π°Π·Π΅ Ρ‡ΠΈΠΏΠΎΠ² Genesi/bPlan Pegasos II (pegasos2).
  • Π’ эмуляторС RISC-V Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ OpenTitan ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ GPU virtio-vga (Π½Π° Π±Π°Π·Π΅ virgl).
  • Π’ эмулятор s390 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° 16 поколСния CPU ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€Π½Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ.
  • Π’ эмулятор x86 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½ΠΎΠ²Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ CPU Intel (Skylake-Client-v4, Skylake-Server-v5, Cascadelake-Server-v5, Cooperlake-v2, Icelake-Client-v3, Icelake-Server-v5, Denverton-v3, Snowridge-v3, Dhyana-v2), Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° инструкция XSAVES. Π’ эмуляторС чипсСта Q35 (ICH9) Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° горячСго ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ PCI-устройств. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° эмуляция Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, прСдоставляСмых Π² процСссорах AMD. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция bus-lock-ratelimit для ограничСния интСнсивности Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΡˆΠΈΠ½Ρ‹ гостСвой систСмой.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° использования Π² качСствС ускоритСля для Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° NVMM, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ NetBSD.
  • Π’ GUI ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ ΠΏΡ€ΠΈ использовании ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° VNC Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ сборкС с внСшним криптографичСским бэкСндом (gnutls, libgcrypt ΠΈΠ»ΠΈ nettle).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru