ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ QEMU 6.2 ืขืžื•ืœืึทื˜ืึธืจ

ื“ื™ ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ QEMU 6.2 ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื’ืขื•ื•ืขืŸ ื“ืขืจืœืื ื’ื˜. ื•ื•ื™ ืึทืŸ ืขืžื•ืœืึทื˜ืึธืจ, QEMU ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืœื•ื™ืคืŸ ืึท ืคึผืจืึธื’ืจืึทื ืงืึทืžืคึผื™ื™ืœื“ ืคึฟืึทืจ ืื™ื™ืŸ ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืคึผืœืึทื˜ืคืึธืจืžืข ืื•ื™ืฃ ืึท ืกื™ืกื˜ืขื ืžื™ื˜ ืึท ื’ืึธืจ ืึทื ื“ืขืจืฉ ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ, ืœืžืฉืœ, ืœื•ื™ืคืŸ ืึทืŸ ARM ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืื•ื™ืฃ ืึท ืงืก86 ืงืึทืžืคึผืึทื˜ืึทื‘ืึทืœ ืคึผื™ืกื™. ืื™ืŸ ื•ื•ื™ืจื˜ื•ืึทืœื™ื–ืึทื˜ื™ืึธืŸ ืžืึธื“ืข ืื™ืŸ QEMU, ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ืงืึธื“ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืื™ืŸ ืึทืŸ ืืคื’ืขื–ื•ื ื“ืขืจื˜ ืกื•ื•ื™ื•ื•ืข ืื™ื– ื ืึธืขื ื˜ ืฆื• ื“ื™ ืคื•ืŸ ืึท ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืกื™ืกื˜ืขื ืจืขื›ื˜ ืฆื• ื“ื™ืจืขืงื˜ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืคื•ืŸ ืื™ื ืกื˜ืจื•ืงืฆื™ืขืก ืื•ื™ืฃ ื“ื™ ืงืคึผื• ืื•ืŸ ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ื“ื™ Xen ื›ื™ื™ืคึผืขืจื•ื•ื™ื™ื–ืขืจ ืึธื“ืขืจ KVM ืžืึธื“ื•ืœืข.

ื“ืขืจ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ืขืจื™ื“ื–ืฉื ืึทืœื™ ื‘ืืฉืืคืŸ ื“ื•ืจืš Fabrice Bellard ืฆื• ืœืึธื–ืŸ ืœื™ื ื•ืงืก ืขืงืกืขืงื•ื˜ืึทื‘ืœืขืก ื’ืขื‘ื•ื™ื˜ ืคึฟืึทืจ ื“ื™ x86 ืคึผืœืึทื˜ืคืึธืจืžืข ืฆื• ืœื•ื™ืคืŸ ืื•ื™ืฃ ื ื™ื˜-ืงืก86 ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจื–. ืื™ื‘ืขืจ ื“ื™ ื™ืึธืจืŸ ืคื•ืŸ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’, ืคื•ืœ ืขืžื™ืึทืœื™ื™ืฉืึทืŸ ืฉื˜ื™ืฆืŸ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ ืคึฟืึทืจ 14 ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจื–, ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืขืžื•ืœืึทื˜ืขื“ ื™ื™ึทื–ื ื•ื•ืึทืจื’ ื“ืขื•ื•ื™ืกืขืก ืื™ื– ื™ืงืกื™ื“ื™ื“ 400. ืื™ืŸ ืฆื•ื’ืจื™ื™ื˜ื•ื ื’ ืคึฟืึทืจ ื•ื•ืขืจืกื™ืข 6.2, ืžืขืจ ื•ื•ื™ 2300 ืขื ื“ืขืจื•ื ื’ืขืŸ ื”ืึธื‘ืŸ ืฉื•ื™ืŸ ื’ืขืžืื›ื˜ ืคื•ืŸ 189 ื“ืขื•ื•ืขืœืึธืคึผืขืจืก.

ืฉืœื™ืกืœ ื™ืžืคึผืจื•ื•ื•ืžืึทื ืฅ ืฆื•ื’ืขื’ืขื‘ืŸ ืื™ืŸ QEMU 6.2:

  • ื“ื™ ื•ื•ื™ืจื˜ื™ืึธ-ืžืขื ืžืขืงืึทื ื™ื–ืึทื, ื•ื•ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ ืื•ืŸ ื“ื™ืกืงืึทื ืขืงื˜ ื–ื™ืงืึธืจืŸ ืฆื• ื•ื•ื™ืจื˜ื•ืึทืœ ืžืืฉื™ื ืขืŸ, ื”ืื˜ ืฆื•ื’ืขืœื™ื™ื’ื˜ ืคื•ืœ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื’ืึทืกื˜ ื–ื›ึผืจื•ืŸ ื“ืึทืžืคึผืก, ืงืึธืคึผื™ืข ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืื™ื™ื“ืขืจ ืื•ืŸ ื ืึธืš ืžื™ื™ื’ืจื™ื™ื˜ื™ื ื’ ื“ื™ ืกื•ื•ื™ื•ื•ืข (ืคืึทืจ-ืงืึธืคึผื™ / ืคึผืึธืกื˜ืŸ-ืงืึธืคึผื™) ืื•ืŸ ืงืจื™ื™ื™ื˜ื™ื ื’ ืกื ืึทืคึผืฉืึทืฅ ืคื•ืŸ ื“ื™ ื’ืึทืกื˜ ืกื™ืกื˜ืขื ืื™ืŸ ื“ืขืจ ื”ื™ื ื˜ืขืจื’ืจื•ื ื˜.
  • QMP (QEMU Machine Protocol) ื™ืžืคึผืœืึทืžืึทื ืฅ ื”ืึทื ื“ืœื™ื ื’ ืคื•ืŸ DEVICE_UNPLUG_GUEST_ERROR ืขืจืจืึธืจืก ื•ื•ืึธืก ืคืึทืœืŸ ืื•ื™ืฃ ื“ื™ ื’ืึทืกื˜ ืกื™ืกื˜ืขื ื–ื™ื™ึทื˜ ืื™ืŸ ืคืึทืœ ืคื•ืŸ ืคื™ื™ืœื™ืขืจื– ื‘ืขืฉืึทืก ื”ื™ื™ืก ืฆืึทืคึผืŸ ืึทืคึผืขืจื™ื™ืฉืึทื ื–.
  • ื“ื™ ืกื™ื ื˜ืึทืงืก ืคื•ืŸ ืžืึทืกืข ืึทืจื’ื•ืžืขื ื˜ืŸ ืคึผืจืึทืกืขืกื˜ ืื™ืŸ ืคึผืœื•ื’ื™ื ืก ืคึฟืึทืจ ื“ื™ ืงืœืึทืกื™ืฉ TCG (Tiny Code Generator) ืงืึธื“ ื’ืขื ืขืจืึทื˜ืึธืจ ืื™ื– ื™ืงืกืคึผืึทื ื“ื™ื“. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืžื•ืœื˜ื™-ื”ืึทืจืฅ ืกื™ืกื˜ืขืžืขืŸ ืฆื• ื“ื™ ืงืึทืฉ ืคึผืœื•ื’ื™ืŸ.
  • ื“ื™ ืงืก86 ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ ืขืžื•ืœืึทื˜ืึธืจ ืฉื˜ื™ืฆื˜ ื“ื™ Intel Snowridge-v4 ืงืคึผื• ืžืึธื“ืขืœ. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืึทืงืกืขืก Intel SGX (Software Guard eXtensions) ื™ื ืงืœืึทื•ื•ื– ืคื•ืŸ ื’ืขืกื˜ ื ื™ืฆืŸ ื“ื™ /dev/sgx_vepc ืžื™ื˜ืœ ืื•ื™ืฃ ื“ืขืจ ื‘ืึทืœืขื‘ืึธืก ื–ื™ื™ึทื˜ ืื•ืŸ ื“ื™ "ื–ื™ืงืึธืจืŸ-ื‘ืึทืงืขื ื“-ืขืคึผืง" ื‘ืึทืงืขื ื“ ืื™ืŸ QEMU. ืคึฟืึทืจ ื’ืึทืกื˜ ืกื™ืกื˜ืขืžืขืŸ ืคึผืจืึธื˜ืขืงื˜ืขื“ ืžื™ื˜ AMD SEV (Secure Encrypted Virtualization) ื˜ืขื›ื ืึธืœืึธื’ื™ืข, ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื•ื•ืขืจืึทืคื™ื™ืึทื‘ืœื™ ื’ืœื™ื™ึทืš (ืึธืŸ ื ื™ืฆืŸ ืึท ื‘ืึธืึธื˜ืœืึธืึทื“ืขืจ) ืงืขืจืŸ ืงืึทื˜ืขืจ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ (ืขื ื™ื™ื‘ืึทืœื“ ื“ื•ืจืš ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ 'ืงืขืจื ืขืœ-ื”ืึทืฉืขืก = ืื•ื™ืฃ' ืคึผืึทืจืึทืžืขื˜ืขืจ ืื™ืŸ 'ืกืขื•ื•-ื’ืึทืกื˜') .
  • ื“ื™ ARM ืขืžื•ืœืึทื˜ืึธืจ ืื•ื™ืฃ ื‘ืึทืœืขื‘ืึธืก ืกื™ืกื˜ืขืžืขืŸ ืžื™ื˜ ืึทืŸ ืขืคึผืœ ืกื™ืœื™ืฆื™ื•ื ืฉืคึผืึธืŸ ื™ืžืคึผืœืึทืžืึทื ืฅ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ "hvf" ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืึทืงืกืขืœืขืจื™ื™ืฉืึทืŸ ืžืขืงืึทื ื™ื–ืึทื ื•ื•ืขืŸ ืคืœื™ืกื ื“ื™ืง ื’ืึทืกื˜ ืกื™ืกื˜ืขืžืขืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ AArch64 ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ. ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืขืžื™ืึทืœื™ื™ื˜ื™ื ื’ ื“ื™ Fujitsu A64FX ืคึผืจืึทืกืขืกืขืจ ืžืึธื“ืขืœ. ื ื ื™ื™ึทืข ื˜ื™ืคึผ ืคื•ืŸ ืขืžื•ืœืึทื˜ืขื“ ืžืึทืฉื™ืŸ "ืงื•ื“ืึธ-ืžื‘ืง" ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“. ืคึฟืึทืจ 'ื•ื•ื™ืจื˜' ืžืืฉื™ื ืขืŸ, ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ITS (Interrupt Translation Service) ืขืžื™ืึทืœื™ื™ืฉืึทืŸ ืื•ืŸ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื ื•ืฆืŸ ืžืขืจ ื•ื•ื™ 123 ืงืคึผื•ืก ืื™ืŸ ืขืžื™ืึทืœื™ื™ืฉืึทืŸ ืžืึธื“ืข. ืฆื•ื’ืขื’ืขื‘ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ BBRAM ืื•ืŸ eFUSE ื“ืขื•ื•ื™ืกืขืก ืคึฟืึทืจ ืขืžื™ืึทืœื™ื™ื˜ื™ื“ ืžืืฉื™ื ืขืŸ "xlnx-zcu102" ืื•ืŸ "xlnx-versal-virt". ืคึฟืึทืจ ืกื™ืกื˜ืขืžืขืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ Cortex-M55 ืฉืคึผืึธืŸ, ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ ืจื™ืจืขื•ื•ื“ื™ืง ืคึผืจืึธืคื™ืœ ืคื•ืŸ MVE ืคึผืจืึทืกืขืกืขืจ ื™ืงืกื˜ืขื ืฉืึทื ื– ืื™ื– ืฆื•ื’ืขืฉื˜ืขืœื˜.
  • ืขืจืฉื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ POWER10 DD2.0 ืงืคึผื• ืžืึธื“ืขืœ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ ืฆื• ื“ื™ PowerPC ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ ืขืžื•ืœืึทื˜ืึธืจ. ืคึฟืึทืจ ืขืžื™ืึทืœื™ื™ื˜ื™ื“ "powernv" ืžืืฉื™ื ืขืŸ, ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ POWER10 ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ ืื™ื– ื™ืžืคึผืจื•ื•ื•ื“, ืื•ืŸ ืคึฟืึทืจ "ืคึผืกืขืจื™" ืžืืฉื™ื ืขืŸ, FORM2 PAPR NUMA ื“ื™ืกืงืจื™ืคึผืฉืึทื ื– ื–ืขื ืขืŸ ืฆื•ื’ืขื’ืขื‘ืŸ.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ Zb [abcs] ื™ื ืกื˜ืจื•ืงื˜ื™ืึธื ืก ืฉื˜ืขืœืŸ ื™ืงืกื˜ืขื ืฉืึทื ื– ืฆื• ื“ื™ RISC-V ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ ืขืžื•ืœืึทื˜ืึธืจ. ืคึฟืึทืจ ืึทืœืข ืขืžื™ืึทืœื™ื™ื˜ื™ื“ ืžืืฉื™ื ืขืŸ, ื“ื™ "ื‘ืึทืœืขื‘ืึธืก ื‘ืึทื ื™ืฆืขืจ" ืื•ืŸ "ื ื•ืžืึท ืžืึทื" ืึธืคึผืฆื™ืขืก ื–ืขื ืขืŸ ืขืจืœื•ื™ื‘ื˜. ืฆื•ื’ืขื’ืขื‘ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ SiFive PWM (Pulse-ื‘ืจื™ื™ื˜ ืžืึธื“ื•ืœืึทื˜ืึธืจ).
  • ื“ื™ 68 ืง ืขืžื•ืœืึทื˜ืึธืจ ื”ืื˜ ื™ืžืคึผืจื•ื•ื•ื“ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืขืคึผืœ ืก NuBus, ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืฉื˜ื™ื•ื•ืœ ืจืึทื ื‘ื™ืœื“ืขืจ ืื•ืŸ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื™ื‘ืขืจืจื™ื™ึทืก ืกืœืึธืฅ.
  • ื“ื™ qemu-nbd ื‘ืœืึธืง ืžื™ื˜ืœ ื”ืื˜ ืฉืจื™ื™ึทื‘ืŸ ืงืึทื˜ืฉื™ื ื’ ืžืึธื“ืข ืขื ื™ื™ื‘ืึทืœื“ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜ ("ืฉืจื™ื™ื‘ื‘ืึทืงืง" ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ "ืฉืจื™ืคื˜ื”ืจืึธื•ื’ื”") ืฆื• ื’ืœื™ื™ึทื›ืŸ ื“ื™ ื ืึทื˜ื•ืจ ืคื•ืŸ qemu-img. ืฆื•ื’ืขื’ืขื‘ืŸ "--selinux-label" ืึธืคึผืฆื™ืข ืคึฟืึทืจ ืœื™ื™ื‘ืœื™ื ื’ SELinux Unix ืกืึทืงืึทืฅ.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’