ืžื”ื“ื•ืจืช Xen hypervisor 4.17

ืœืื—ืจ ืฉื ื” ืฉืœ ืคื™ืชื•ื—, ื”-Hypervisor ื”ื—ื™ื ืžื™ Xen 4.17 ืฉื•ื—ืจืจ. ื—ื‘ืจื•ืช ื›ืžื• Amazon, Arm, Bitdefender, Citrix, EPAM Systems ื•- Xilinx (AMD) ืœืงื—ื• ื—ืœืง ื‘ืคื™ืชื•ื— ื”ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื”. ื”ืคืงืช ื”ืขื“ื›ื•ื ื™ื ืœืกื ื™ืฃ Xen 4.17 ืชื™ืžืฉืš ืขื“ ื”-12 ื‘ื™ื•ื ื™ 2024, ื•ืคืจืกื•ื ืชื™ืงื•ื ื™ ื”ืคื’ื™ืขื•ืช ืขื“ ื”-12 ื‘ื“ืฆืžื‘ืจ 2025.

ืฉื™ื ื•ื™ื™ื ืžืจื›ื–ื™ื™ื ื‘-Xen 4.17:

  • ื”ืชืืžื” ื—ืœืงื™ืช ืžืกื•ืคืงืช ืœื“ืจื™ืฉื•ืช ืœืคื™ืชื•ื— ืชื•ื›ื ื™ื•ืช ื‘ื˜ื•ื—ื•ืช ื•ืืžื™ื ื•ืช ื‘ืฉืคืช C, ืฉื ื•ืกื—ื• ื‘ืžืคืจื˜ื™ MISRA-C ื”ืžืฉืžืฉื™ื ื‘ื™ืฆื™ืจืช ืžืขืจื›ื•ืช ืงืจื™ื˜ื™ื•ืช ืœืžืฉื™ืžื”. Xen ืžื™ื™ืฉืžืช ืจืฉืžื™ืช 4 ื”ื ื—ื™ื•ืช ื•-24 ื›ืœืœื™ MISRA-C (ืžืชื•ืš 143 ื›ืœืœื™ื ื•-16 ื”ื ื—ื™ื•ืช), ื•ื›ืŸ ืžืฉืœื‘ืช ืืช ื”ื ืชื— ื”ืกื˜ื˜ื™ MISRA-C ื‘ืชื”ืœื™ื›ื™ ื”ืจื›ื‘ื”, ื”ืžื•ื•ื“ื ืขืžื™ื“ื” ื‘ื“ืจื™ืฉื•ืช ื”ืžืคืจื˜.
  • ืžืกืคืง ืืช ื”ื™ื›ื•ืœืช ืœื”ื’ื“ื™ืจ ืชืฆื•ืจืช Xen ืกื˜ื˜ื™ืช ืขื‘ื•ืจ ืžืขืจื›ื•ืช ARM, ื”ืžืงื•ื“ื“ืช ืžืจืืฉ ืืช ื›ืœ ื”ืžืฉืื‘ื™ื ื”ื“ืจื•ืฉื™ื ืœืืชื—ื•ืœ ื”ืื•ืจื—ื™ื. ื›ืœ ื”ืžืฉืื‘ื™ื, ื›ื’ื•ืŸ ื–ื™ื›ืจื•ืŸ ืžืฉื•ืชืฃ, ืขืจื•ืฆื™ ื”ื•ื“ืขื•ืช ืขืœ ืื™ืจื•ืขื™ื ื•ืฉื˜ื— ืขืจื™ืžืช Hypervisor, ืžื•ืงืฆื™ื ืžืจืืฉ ื‘ื”ืคืขืœื” ืฉืœ Hypervisor ื•ืœื ืžื•ืงืฆื™ื ื‘ืื•ืคืŸ ื“ื™ื ืžื™, ืžื” ืฉืžื‘ื˜ืœ ื›ืฉืœื™ื ืืคืฉืจื™ื™ื ืขืงื‘ ืžื—ืกื•ืจ ื‘ืžืฉืื‘ื™ื ื‘ืžื”ืœืš ื”ืคืขื•ืœื”.
  • ืขื‘ื•ืจ ืžืขืจื›ื•ืช ืžืฉื•ื‘ืฆื•ืช ื”ืžื‘ื•ืกืกื•ืช ืขืœ ืืจื›ื™ื˜ืงื˜ื•ืจืช ARM, ื™ื•ืฉืžื” ืชืžื™ื›ื” ื ื™ืกื™ื•ื ื™ืช (ืชืฆื•ื’ื” ืžืงื“ื™ืžื” ื˜ื›ื ื™ืช) ืขื‘ื•ืจ ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ืฉืœ I/O ื‘ืืžืฆืขื•ืช ืคืจื•ื˜ื•ืงื•ืœื™ VirtIO. ืชืขื‘ื•ืจืช virtio-mmio ืžืฉืžืฉืช ืœื”ื—ืœืคืช ื ืชื•ื ื™ื ืขื ื”ืชืงืŸ I/O ื•ื™ืจื˜ื•ืืœื™, ืžื” ืฉืžื‘ื˜ื™ื— ืชืื™ืžื•ืช ืœืžื’ื•ื•ืŸ ืจื—ื‘ ืฉืœ ื”ืชืงื ื™ VirtIO. ื”ื•ื˜ืžืขื” ืชืžื™ื›ื” ื‘-frontend ืฉืœ ืœื™ื ื•ืงืก, ืขืจื›ืช ื›ืœื™ื (libxl/xl), ืžืฆื‘ dom0less ื•-backends ื”ืคื•ืขืœื™ื ื‘ืžืจื—ื‘ ื”ืžืฉืชืžืฉ (Virtio-disk, virtio-net, i2c ื•-gpio backends ื ื‘ื“ืงื•).
  • ืชืžื™ื›ื” ืžืฉื•ืคืจืช ื‘ืžืฆื‘ dom0less, ื”ืžืืคืฉืจืช ืœื”ื™ืžื ืข ืžืคืจื™ืกื” ืฉืœ ืกื‘ื™ื‘ืช dom0 ื‘ืขืช ื”ืคืขืœืช ืžื›ื•ื ื•ืช ื•ื™ืจื˜ื•ืืœื™ื•ืช ื‘ืฉืœื‘ ืžื•ืงื“ื ืฉืœ ืืชื—ื•ืœ ื”ืฉืจืช. ืืคืฉืจ ืœื”ื’ื“ื™ืจ ื‘ืจื™ื›ื•ืช CPU (CPUPOOL) ื‘ืฉืœื‘ ื”ืืชื—ื•ืœ (ื‘ืืžืฆืขื•ืช ืขืฅ ื”ืชืงื ื™ื), ืžื” ืฉืžืืคืฉืจ ืœื”ืฉืชืžืฉ ื‘ืžืื’ืจื™ื ื‘ืชืฆื•ืจื•ืช ืœืœื dom0, ืœืžืฉืœ, ืœืื’ื“ ืกื•ื’ื™ื ืฉื•ื ื™ื ืฉืœ ืœื™ื‘ื•ืช CPU ื‘ืžืขืจื›ื•ืช ARM ื”ืžื‘ื•ืกืกื•ืช ืขืœ big.LITTLE ืืจื›ื™ื˜ืงื˜ื•ืจื”, ื”ืžืฉืœื‘ืช ืœื™ื‘ื•ืช ื—ื–ืงื•ืช ืืš ืฆื•ืจื›ื•ืช ืื ืจื’ื™ื” ื•ืœื™ื‘ื•ืช ืคื—ื•ืช ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช ืืš ื™ืขื™ืœื•ืช ื™ื•ืชืจ ื‘ืื ืจื’ื™ื”. ื‘ื ื•ืกืฃ, dom0less ืžืกืคืงืช ืืช ื”ื™ื›ื•ืœืช ืœืื’ื“ ืืช ื”-frontend/backend ืฉืœ para-ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ืœืžืขืจื›ื•ืช ืื•ืจื—, ืžื” ืฉืžืืคืฉืจ ืœืš ืœืืชื—ืœ ืžืขืจื›ื•ืช ืื•ืจื— ืขื ื”ืžื›ืฉื™ืจื™ื ื”ื“ืจื•ืฉื™ื ืœ-paravirtualization.
  • ื‘ืžืขืจื›ื•ืช ARM, ืžื‘ื ื™ ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ืฉืœ ื–ื™ื›ืจื•ืŸ (P2M, Physical to Machine) ืžื•ืงืฆื™ื ื›ืขืช ืžืžืื’ืจ ื”ื–ื™ื›ืจื•ืŸ ืฉื ื•ืฆืจ ื‘ืขืช ื™ืฆื™ืจืช ื”ื“ื•ืžื™ื™ืŸ, ืžื” ืฉืžืืคืฉืจ ื‘ื™ื“ื•ื“ ื˜ื•ื‘ ื™ื•ืชืจ ื‘ื™ืŸ ื”ืื•ืจื—ื™ื ื›ืืฉืจ ืžืชืจื—ืฉื™ื ื›ืฉืœื™ื ื”ืงืฉื•ืจื™ื ืœื–ื™ื›ืจื•ืŸ.
  • ืขื‘ื•ืจ ืžืขืจื›ื•ืช ARM, ื ื•ืกืคื” ื”ื’ื ื” ืžืคื ื™ ืคื’ื™ืขื•ืช Spectre-BHB ื‘ืžื‘ื ื™ื ืžื™ืงืจื•-ืื“ืจื™ื›ืœื™ื™ื ืฉืœ ืžืขื‘ื“ื™ื.
  • ื‘ืžืขืจื›ื•ืช ARM, ื ื™ืชืŸ ืœื”ืคืขื™ืœ ืืช ืžืขืจื›ืช ื”ื”ืคืขืœื” Zephyr ื‘ืกื‘ื™ื‘ืช ื”ืฉื•ืจืฉ Dom0.
  • ืžืกื•ืคืงืช ืืคืฉืจื•ืช ืฉืœ ืžื›ืœื•ืœ hypervisor ื ืคืจื“ (ืžื—ื•ืฅ ืœืขืฅ).
  • ื‘ืžืขืจื›ื•ืช x86, ื“ืคื™ IOMMU ื’ื“ื•ืœื™ื (ืกื•ืคืจ-ื“ืฃ) ื ืชืžื›ื™ื ืขื‘ื•ืจ ื›ืœ ืกื•ื’ื™ ืžืขืจื›ื•ืช ื”ืื•ืจื—, ืžื” ืฉืžืืคืฉืจ ื”ื’ื“ืœืช ื”ืชืคื•ืงื” ื‘ืขืช ื”ืขื‘ืจืช ื”ืชืงื ื™ PCI. ื ื•ืกืคื” ืชืžื™ื›ื” ืœืžืืจื—ื™ื ื”ืžืฆื•ื™ื“ื™ื ื‘-RAM ืฉืœ ืขื“ 12 TB. ื‘ืฉืœื‘ ื”ืืชื—ื•ืœ, ื”ื•ื˜ืžืขื” ื”ื™ื›ื•ืœืช ืœื”ื’ื“ื™ืจ ืคืจืžื˜ืจื™ื ืฉืœ cpuid ืขื‘ื•ืจ dom0. ื›ื“ื™ ืœืฉืœื•ื˜ ื‘ืืžืฆืขื™ ื”ื”ื’ื ื” ื”ืžื™ื•ืฉืžื™ื ื‘ืจืžืช ื”ื”ื™ืคืจื•ื•ื™ื–ืจ ืžืคื ื™ ื”ืชืงืคื•ืช ืขืœ ื”ืžืขื‘ื“ ื‘ืžืขืจื›ื•ืช ืื•ืจื—ื•ืช, ืžื•ืฆืขื™ื ื”ืคืจืžื˜ืจื™ื VIRT_SSBD ื•-MSR_SPEC_CTRL.
  • ื”ืชืขื‘ื•ืจื” ืฉืœ VirtIO-Grant ืžืคื•ืชื—ืช ื‘ื ืคืจื“, ื‘ืฉื•ื ื” ืž-VirtIO-MMIO ื‘ืจืžืช ืื‘ื˜ื—ื” ื’ื‘ื•ื”ื” ื™ื•ืชืจ ื•ื‘ื™ื›ื•ืœืช ืœื”ืคืขื™ืœ ืžื˜ืคืœื™ื ื‘ืชื—ื•ื ืžื‘ื•ื“ื“ ื ืคืจื“ ืขื‘ื•ืจ ื ื”ื’ื™ื. VirtIO-Grant, ื‘ืžืงื•ื ืžื™ืคื•ื™ ื–ื™ื›ืจื•ืŸ ื™ืฉื™ืจ, ืžืฉืชืžืฉ ื‘ืชืจื’ื•ื ืฉืœ ื›ืชื•ื‘ื•ืช ืคื™ื–ื™ื•ืช ืฉืœ ืžืขืจื›ืช ื”ืื•ืจื—ื™ื ืœืงื™ืฉื•ืจื™ ื”ืขื ืงื”, ืžื” ืฉืžืืคืฉืจ ืฉื™ืžื•ืฉ ื‘ืื–ื•ืจื™ื ืžื•ืกื›ืžื™ื ืžืจืืฉ ืฉืœ ื–ื™ื›ืจื•ืŸ ืžืฉื•ืชืฃ ืœื—ื™ืœื•ืคื™ ื ืชื•ื ื™ื ื‘ื™ืŸ ื”ืžืขืจื›ืช ื”ืื•ืจื—ืช ืœ-VirtIO backend, ืžื‘ืœื™ ืœื”ืขื ื™ืง ื–ื›ื•ื™ื•ืช ื”ืงืฆื” ื”ืื—ื•ืจื™ ืœื‘ื™ืฆื•ืข ืžื™ืคื•ื™ ื–ื™ื›ืจื•ืŸ. ืชืžื™ื›ืช VirtIO-Grant ื›ื‘ืจ ืžื™ื•ืฉืžืช ื‘ืœื™ื‘ืช ืœื™ื ื•ืงืก, ืืš ืขื“ื™ื™ืŸ ืœื ื ื›ืœืœืช ื‘-QEMU backends, ื‘-virtio-vhost ื•ื‘ืขืจื›ืช ื”ื›ืœื™ื (libxl/xl).
  • ื™ื•ื–ืžืช Hyperlaunch ืžืžืฉื™ื›ื” ืœื”ืชืคืชื—, ืฉืžื˜ืจืชื” ืœืกืคืง ื›ืœื™ื ื’ืžื™ืฉื™ื ืœื”ื’ื“ืจืช ื”ืฉืงืช ืžื›ื•ื ื•ืช ื•ื™ืจื˜ื•ืืœื™ื•ืช ื‘ืžื”ืœืš ืืชื—ื•ืœ ื”ืžืขืจื›ืช. ื ื›ื•ืŸ ืœืขื›ืฉื™ื•, ืขืจื›ืช ื”ืชื™ืงื•ื ื™ื ื”ืจืืฉื•ื ื” ื›ื‘ืจ ื”ื•ื›ื ื” ื”ืžืืคืฉืจืช ืœืš ืœื–ื”ื•ืช ืชื—ื•ืžื™ PV ื•ืœื”ืขื‘ื™ืจ ืืช ื”ืชืžื•ื ื•ืช ืฉืœื”ื ืœ-hypervisor ื‘ืขืช ื”ื˜ืขื™ื ื”. ื›ืœ ื”ื“ืจื•ืฉ ืœื”ืคืขืœืช ื“ื•ืžื™ื™ื ื™ื ืคืจ-ื•ื™ืจื˜ื•ืืœื™ื™ื ื›ืืœื” ื™ื•ืฉื ื’ื ื”ื•ื, ื›ื•ืœืœ ืจื›ื™ื‘ื™ Xenstore ืขื‘ื•ืจ ืžื ื”ืœื™ ื”ืชืงื ื™ื PV. ืœืื—ืจ ืงื‘ืœืช ื”ืชื™ืงื•ื ื™ื, ืชืชื—ื™ืœ ืขื‘ื•ื“ื” ืขืœ ืžื ืช ืœืืคืฉืจ ืชืžื™ื›ื” ื‘ื”ืชืงื ื™ PVH ื•-HVM, ื›ืžื• ื’ื ื”ื˜ืžืขื” ืฉืœ ืชื—ื•ื domB ื ืคืจื“ (ื“ื•ืžื™ื™ืŸ Builder), ื”ืžืชืื™ื ืœืืจื’ื•ืŸ ืืชื—ื•ืœ ืžื“ื•ื“, ื”ืžืืฉืจ ืืช ืชืงืคื•ืช ื›ืœ ื”ืจื›ื™ื‘ื™ื ื”ื˜ืขื•ื ื™ื.
  • ื”ืขื‘ื•ื“ื” ื ืžืฉื›ืช ืขืœ ื™ืฆื™ืจืช ื™ืฆื™ืื” ืฉืœ Xen ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจืช RISC-V.

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

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