ืฉื—ืจื•ืจ ืืžื•ืœื˜ื•ืจ QEMU 5.0

ืฉื”ื•ื’ืฉ ืขืœ ื™ื“ื™ ืฉื—ืจื•ืจ ื”ืคืจื•ื™ืงื˜ QEMU 5.0. ื‘ืชื•ืจ ืืžื•ืœื˜ื•ืจ, QEMU ืžืืคืฉืจ ืœืš ืœื”ืจื™ืฅ ืชื•ื›ื ื™ืช ื”ื™ื“ื•ืจื™ืช ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžืช ื—ื•ืžืจื” ืื—ืช ืขืœ ืžืขืจื›ืช ืขื ืืจื›ื™ื˜ืงื˜ื•ืจื” ืฉื•ื ื” ืœื—ืœื•ื˜ื™ืŸ, ืœืžืฉืœ, ืœื”ืคืขื™ืœ ื™ื™ืฉื•ื ARM ืขืœ ืžื—ืฉื‘ ืชื•ืื x86. ื‘ืžืฆื‘ ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ื‘-QEMU, ื”ื‘ื™ืฆื•ืขื™ื ืฉืœ ื‘ื™ืฆื•ืข ืงื•ื“ ื‘ืกื‘ื™ื‘ื” ืžื‘ื•ื“ื“ืช ืงืจื•ื‘ื™ื ืœืžืขืจื›ืช ื”ืžืงื•ืจื™ืช ืขืงื‘ ื‘ื™ืฆื•ืข ื™ืฉื™ืจ ืฉืœ ื”ื•ืจืื•ืช ืขืœ ื”-CPU ื•ื”ืฉื™ืžื•ืฉ ื‘-Xen hypervisor ืื• ืžื•ื“ื•ืœ KVM.

ื”ืคืจื•ื™ืงื˜ ื ื•ืฆืจ ื‘ืžืงื•ืจ ืขืœ ื™ื“ื™ Fabrice Bellard ื›ื“ื™ ืœืืคืฉืจ ืœืงื•ื‘ืฆื™ ื”ืคืขืœื” ืฉืœ ืœื™ื ื•ืงืก ืฉื ื‘ื ื• ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžืช x86 ืœืคืขื•ืœ ืขืœ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ืฉืื™ื ืŸ x86. ื‘ืžื”ืœืš ืฉื ื•ืช ื”ืคื™ืชื•ื—, ื ื•ืกืคื” ืชืžื™ื›ืช ืืžื•ืœืฆื™ื” ืžืœืื” ืขื‘ื•ืจ 14 ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ื—ื•ืžืจื”, ืžืกืคืจ ื”ืชืงื ื™ ื”ื—ื•ืžืจื” ื”ืžื—ื•ืœืงื™ื ืขืœื” ืขืœ 400. ืœืงืจืืช ื’ืจืกื” 5.0 ื‘ื•ืฆืขื• ื™ื•ืชืจ ืž-2800 ืฉื™ื ื•ื™ื™ื ืž-232 ืžืคืชื—ื™ื.

ืžืคืชื— ืฉื™ืคื•ืจื™ืื ื•ืกืฃ ื‘-QEMU 5.0:

  • ื”ื™ื›ื•ืœืช ืœื”ืขื‘ื™ืจ ื—ืœืง ืžืžืขืจื›ืช ื”ืงื‘ืฆื™ื ืฉืœ ื”ืกื‘ื™ื‘ื” ื”ืžืืจื—ืช ืœืžืขืจื›ืช ื”ืื•ืจื—ืช ื‘ืืžืฆืขื•ืช virtiofsd. ื”ืžืขืจื›ืช ื”ืื•ืจื—ืช ื™ื›ื•ืœื” ืœื”ืจื›ื™ื‘ ืกืคืจื™ื™ื” ืžืกื•ืžื ืช ืœื™ื™ืฆื•ื ื‘ืฆื“ ื”ืžืขืจื›ืช ื”ืžืืจื—ืช, ืžื” ืฉืžืคืฉื˜ ืžืื•ื“ ืืช ื”ืืจื’ื•ืŸ ืฉืœ ื’ื™ืฉื” ืžืฉื•ืชืคืช ืœืกืคืจื™ื•ืช ื‘ืžืขืจื›ื•ืช ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื”. ื‘ื ื™ื’ื•ื“ ืœืฉื™ืžื•ืฉ ื‘ืžืขืจื›ื•ืช ืงื‘ืฆื™ื ื‘ืจืฉืช ื›ื’ื•ืŸ NFS ื•-virtio-9P, virtiofs ืžืืคืฉืจืช ืœืš ืœื”ืฉื™ื’ ื‘ื™ืฆื•ืขื™ื ืงืจื•ื‘ื™ื ืœืžืขืจื›ืช ืงื‘ืฆื™ื ืžืงื•ืžื™ืช;
  • ืชืžื™ื›ื” ื”ื’ื™ืจื” ื—ื™ื” ืฉืœ ื ืชื•ื ื™ื ืžืชื”ืœื™ื›ื™ื ื—ื™ืฆื•ื ื™ื™ื ื‘ืืžืฆืขื•ืช ื”-QEMU D-Bus;
  • ืฉืึฐืžึดื™ืฉืื•ึผืช ืงืฆื” ืื—ื•ืจื™ ืฉืœ ื–ื™ื›ืจื•ืŸ ื›ื“ื™ ืœื”ื‘ื˜ื™ื— ืืช ืคืขื•ืœืช ื”-RAM ื”ืจืืฉื™ ืฉืœ ืžืขืจื›ืช ื”ืื•ืจื—ื™ื. ื”ืงืฆื” ื”ืื—ื•ืจื™ ืžืฆื•ื™ืŸ ื‘ืืžืฆืขื•ืช ื”ืืคืฉืจื•ืช "-machine memory-backend";
  • ืžืกื ืŸ "ื“ื—ื™ืกื”" ื—ื“ืฉ, ืฉื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื• ืœื™ืฆื™ืจืช ื’ื™ื‘ื•ื™ื™ื ืฉืœ ืชืžื•ื ื•ืช ื“ื—ื•ืกื•ืช;
  • ื”ืคืงื•ื“ื” "qemu-img measure" ื™ื›ื•ืœื” ื›ืขืช ืœืขื‘ื•ื“ ืขื ืชืžื•ื ื•ืช LUKS, ื•ื”ืืคืฉืจื•ืช "--target-is-zero" ื ื•ืกืคื” ืœืคืงื•ื“ื” "qemu-img convert" ื›ื“ื™ ืœื“ืœื’ ืขืœ ืื™ืคื•ืก ืชืžื•ื ืช ื”ื™ืขื“;
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื ื™ืกื™ื•ื ื™ืช ืœืชื”ืœื™ืš qemu-storage-daemon, ื”ืžืกืคืงืช ื’ื™ืฉื” ืœืจืžืช ื”ื‘ืœื•ืง QEMU ื•ืœืคืงื•ื“ื•ืช QMP, ื›ื•ืœืœ ื”ืคืขืœืช ื”ืชืงื ื™ ื‘ืœื•ืง ื•ืฉืจืช ื”-NBD ื”ืžื•ื‘ื ื”, ืœืœื ืฆื•ืจืš ืœื”ืคืขื™ืœ ืžื›ื•ื ื” ื•ื™ืจื˜ื•ืืœื™ืช ืžืœืื”;
  • ืืžื•ืœื˜ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจืช ARM ื”ื•ืกื™ืฃ ืืช ื”ื™ื›ื•ืœืช ืœื—ืงื•ืช ืžืขื‘ื“ื™ Cortex-M7 ื•ืžืกืคืง ืชืžื™ื›ื” ื‘ืœื•ื—ื•ืช tacoma-bmc, Netduino Plus 2 ื•-Orangepi. ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžื›ืฉื™ืจื™ vTPM ื•-virtio-iommu ืœืžื›ื•ื ื•ืช ื—ื™ืงื•ื™ 'virt'. ื”ื™ื›ื•ืœืช ืœื”ืฉืชืžืฉ ื‘ืžืขืจื›ื•ืช ืžืืจื—ื•ืช AArch32 ืœื”ืคืขืœืช ืกื‘ื™ื‘ื•ืช ืื•ืจื— KVM ื”ื•ืฆืื” ืžืฉื™ืžื•ืฉ. ื™ื•ืฉืžื” ืชืžื™ื›ื” ื‘ืืžื•ืœืฆื™ื” ืฉืœ ืชื›ื•ื ื•ืช ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ื”ื‘ืื•ืช:
    • ARMv8.1: HEV, VMID16, PAN, PMU
    • ARMv8.2: UAO, DCPoP, ATS1E1, TTCNP
    • ARMv8.3: RCPC, CCIDX
    • ARMv8.4: PMU, RCPC
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžืกื•ืฃ ื’ืจืคื™ ืœืืžื•ืœื˜ื•ืจ ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” HPPA ื‘ืืžืฆืขื•ืช ื”ื”ืชืงืŸ ื”ื’ืจืคื™ ืฉืœ HP Artist;
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ื”ื•ืจืืช GINVT (Global Invalidation TLB) ืœืืžื•ืœื˜ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจืช MIPS;
  • ืืžื•ืœื˜ื•ืจ ืฉืœ ื›ืœื™ ื”ืืฆืช ื—ื•ืžืจื” ืฉืœ KVM ืœื”ืคืขืœืช ืžืขืจื›ื•ืช ืื•ืจื—ื•ืช ื ื•ืกืคื” ืœืืžื•ืœื˜ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจืช PowerPC ืขื‘ื•ืจ ืžื›ื•ื ื•ืช 'powernv'
    KVM ืขื ืžื—ื•ืœืœ ืงื•ื“ TCG ืงืœืืกื™ (ืžื—ื•ืœืœ ืงื•ื“ ื–ืขื™ืจ). ื›ื“ื™ ืœื—ืงื•ืช ื–ื™ื›ืจื•ืŸ ืžืชืžืฉืš, ื ื•ืกืคื” ืชืžื™ื›ื” ืขื‘ื•ืจ NVDIMMs ื”ืžืฉืชืงืคื™ื ื‘ืงื•ื‘ืฅ. ืขื‘ื•ืจ ืžื›ื•ื ื•ืช 'ืคืกืจื™ื•ืช', ื”ืฆื•ืจืš ื‘ืืชื—ื•ืœ ืžื—ื“ืฉ ื”ื•ืกืจ ื›ื“ื™ ืœืชืื ืืช ืคืขื•ืœืช ื‘ืงืจื™ ื”ืคืกื™ืงื” ืฉืœ XIVE/XICS ื‘ืžืฆื‘ "ic-mode=dual";

  • ืืžื•ืœื˜ื•ืจ ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” RISC-V ืขื‘ื•ืจ ืœื•ื—ื•ืช 'virt' ื•-'sifive_u' ืžืกืคืง ืชืžื™ื›ื” ืขื‘ื•ืจ ืžื ื”ืœื™ ื”ืชืงื ื™ื ืจื’ื™ืœื™ื ืฉืœ Linux syscon ืœื ื™ื”ื•ืœ ื”ืคืขืœื” ื•ืืชื—ื•ืœ ืžื—ื“ืฉ. ื ื•ืกืคื” ืชืžื™ื›ืช Goldfish RTC ืขื‘ื•ืจ ืœื•ื— 'virt'. ื”ื•ืกืฃ ื™ื™ืฉื•ื ื ื™ืกื™ื•ื ื™ ืฉืœ ื”ืจื—ื‘ื•ืช ื”ื™ืคืจื•ื•ื™ื–ืจ;
  • ืชืžื™ื›ื” ื‘-AIS (ื“ื™ื›ื•ื™ ื”ืคืกืงืช ืžืชืื) ื ื•ืกืคื” ืœืืžื•ืœื˜ื•ืจ ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” s390 ื›ืืฉืจ ื”ื•ื ืคื•ืขืœ ื‘ืžืฆื‘ KVM.

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

ื”ื•ืกืคืช ืชื’ื•ื‘ื”