ืžื”ื“ื•ืจืช ืœื™ื‘ืช ืœื™ื ื•ืงืก 5.14

ืœืื—ืจ ื—ื•ื“ืฉื™ื™ื ืฉืœ ืคื™ืชื•ื—, Linus Torvalds ื”ืฆื™ื’ ืืช ื”ืžื”ื“ื•ืจื” ืฉืœ ืœื™ื‘ืช ืœื™ื ื•ืงืก 5.14. ื‘ื™ืŸ ื”ืฉื™ื ื•ื™ื™ื ื”ื‘ื•ืœื˜ื™ื ื‘ื™ื•ืชืจ: ืงืจื™ืื•ืช ื—ื“ืฉื•ืช ืœืžืขืจื›ืช quotactl_fd() ื•- memfd_secret(), ื”ืกืจืช ืžื ื”ืœื™ ื”ืชืงื ื™ื ืฉืœ ide ื•-raw, ื‘ืงืจ ืขื“ื™ืคื•ืช I/O ื—ื“ืฉ ืขื‘ื•ืจ cgroup, ืžืฆื‘ ืชื–ืžื•ืŸ ืžืฉื™ืžื•ืช SCHED_CORE, ืชืฉืชื™ืช ืœื™ืฆื™ืจืช ืžืขืžื™ืกื™ ืชื•ื›ื ื™ื•ืช BPF ืžืื•ืžืชื™ื.

ื”ื’ืจืกื” ื”ื—ื“ืฉื” ื›ื•ืœืœืช 15883 ืชื™ืงื•ื ื™ื ืž-2002 ืžืคืชื—ื™ื, ื’ื•ื“ืœ ื”ืชื™ืงื•ืŸ ื”ื•ื 69 MB (ื”ืฉื™ื ื•ื™ื™ื ื”ืฉืคื™ืขื• ืขืœ 12580 ืงื‘ืฆื™ื, ื ื•ืกืคื• 861501 ืฉื•ืจื•ืช ืงื•ื“, 321654 ืฉื•ืจื•ืช ื ืžื—ืงื•). ื›-47% ืžื›ืœ ื”ืฉื™ื ื•ื™ื™ื ืฉื”ื•ืฆื’ื• ื‘-5.14 ืงืฉื•ืจื™ื ืœืžื ื”ืœื™ ื”ืชืงื ื™ื, ื›-14% ืžื”ืฉื™ื ื•ื™ื™ื ืงืฉื•ืจื™ื ืœืขื“ื›ื•ืŸ ืงื•ื“ ืกืคืฆื™ืคื™ ืœืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ื—ื•ืžืจื”, 13% ืงืฉื•ืจื™ื ืœืขืจื™ืžืช ื”ืจืฉืช, 3% ืงืฉื•ืจื™ื ืœืžืขืจื›ื•ืช ืงื‘ืฆื™ื ื•-3% ืงืฉื•ืจื™ื ืœืชืชื™ ืžืขืจื›ื•ืช ืœื™ื‘ื” ืคื ื™ืžื™ื•ืช.

ื—ื™ื“ื•ืฉื™ื ืขื™ืงืจื™ื™ื:

  • ืชืช-ืžืขืจื›ืช ื“ื™ืกืง, ืงืœื˜/ืคืœื˜ ื•ืžืขืจื›ื•ืช ืงื‘ืฆื™ื
    • ื‘ืงืจ ื—ื“ืฉ ืœืชืขื“ื•ืฃ ืงืœื˜/ืคืœื˜ ื™ื•ืฉื ืขื‘ื•ืจ cgroups, rq-qos, ืฉื™ื›ื•ืœ ืœืฉืœื•ื˜ ื‘ืขื“ื™ืคื•ืช ื”ืขื™ื‘ื•ื“ ืฉืœ ื‘ืงืฉื•ืช ืœื—ืกื™ืžืช ื”ืชืงื ื™ื ืฉื ื•ืฆืจื• ืขืœ ื™ื“ื™ ื—ื‘ืจื™ื ื‘ื›ืœ cgroup. ืชืžื™ื›ืช ื‘ืงืจ ืขื“ื™ืคื•ืช ื—ื“ืฉื” ื ื•ืกืคื” ืœ-mq-deadline I/O ืžืชื–ืžืŸ.
    • ืžืขืจื›ืช ื”ืงื‘ืฆื™ื ext4 ืžื™ื™ืฉืžืช ืคืงื•ื“ืช ioctl ื—ื“ืฉื”, EXT4_IOC_CHECKPOINT, ืืฉืจ ืžืืœืฆืช ืืช ื›ืœ ื”ืขืกืงืื•ืช ื”ืžืžืชื™ื ื•ืช ืžื”ื™ื•ืžืŸ ื•ื”ืžืื’ืจื™ื ื”ืžืฉื•ื™ื›ื™ื ืœื”ื ืœื”ื™ืกื—ืฃ ืœื“ื™ืกืง, ื•ื’ื ืžื—ืœื™ืคื” ืืช ื”ืื–ื•ืจ ื”ืžืฉืžืฉ ืืช ื”ื™ื•ืžืŸ ื‘ืื—ืกื•ืŸ. ื”ืฉื™ื ื•ื™ ื”ื•ื›ืŸ ื›ื—ืœืง ืžื™ื•ื–ืžื” ืœืžื ื™ืขืช ื“ืœื™ืคื•ืช ืžื™ื“ืข ืžืžืขืจื›ื•ืช ืงื‘ืฆื™ื.
    • ื‘ื•ืฆืขื• ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ืฉืœ ื‘ื™ืฆื•ืขื™ื ืœ-Btrfs: ืขืœ ื™ื“ื™ ื‘ื™ื˜ื•ืœ ืจื™ืฉื•ื ืžื™ื•ืชืจ ืฉืœ ืชื›ื•ื ื•ืช ืžื•ืจื—ื‘ื•ืช ื‘ืžื”ืœืš ื‘ื™ืฆื•ืข fsync, ื”ื‘ื™ืฆื•ืขื™ื ืฉืœ ืคืขื•ืœื•ืช ืื™ื ื˜ื ืกื™ื‘ื™ื•ืช ืขื ืชื›ื•ื ื•ืช ืžื•ืจื—ื‘ื•ืช ื’ื“ืœื• ื‘ืขื“ 17%. ื‘ื ื•ืกืฃ, ื‘ืขืช ื‘ื™ืฆื•ืข ืคืขื•ืœื•ืช ื—ื™ืชื•ืš ืฉืื™ื ืŸ ืžืฉืคื™ืขื•ืช ืขืœ ื”ื™ืงืคื™ื, ื”ืกื ื›ืจื•ืŸ ื”ืžืœื ืžื•ืฉื‘ืช, ืžื” ืฉื”ืคื—ื™ืช ืืช ื–ืžืŸ ื”ืคืขื•ืœื” ื‘-12%. ื ื•ืกืคื” ื”ื’ื“ืจื” ืœ-sysfs ื›ื“ื™ ืœื”ื’ื‘ื™ืœ ืืช ืจื•ื—ื‘ ื”ืคืก ืฉืœ I/O ื‘ืขืช ื‘ื“ื™ืงืช ื”-FS. ื ื•ืกืคื• ืฉื™ื—ื•ืช ioctl ื›ื“ื™ ืœื‘ื˜ืœ ืฉื™ื ื•ื™ ื’ื•ื“ืœ ื•ืžื—ื™ืงืช ืคืขื•ืœื•ืช ื”ืžื›ืฉื™ืจ.
    • ื‘-XFS, ื”ื™ื™ืฉื•ื ืฉืœ ืžื˜ืžื•ืŸ ื”ืžืื’ืจ ืขื•ืฆื‘ ืžื—ื“ืฉ, ืืฉืจ ื”ื•ืขื‘ืจ ืœื”ืงืฆืืช ื“ืคื™ ื–ื™ื›ืจื•ืŸ ื‘ืžืฆื‘ ืืฆื•ื•ื”. ื™ืขื™ืœื•ืช ืžื˜ืžื•ืŸ ืžืฉื•ืคืจืช.
    • F2FS ืžื•ืกื™ืฃ ืืคืฉืจื•ืช ืœืคืขื•ืœ ื‘ืžืฆื‘ ืงืจื™ืื” ื‘ืœื‘ื“ ื•ืžื™ื™ืฉืžืช ืžืฆื‘ ืžื˜ืžื•ืŸ ื‘ืœื•ืง ื“ื—ื•ืก (compress_cache) ืœืฉื™ืคื•ืจ ื‘ื™ืฆื•ืขื™ ืงืจื™ืื” ืืงืจืื™ืช. ื”ื•ื˜ืžืขื” ืชืžื™ื›ื” ืœื“ื—ื™ืกืช ืงื‘ืฆื™ื ืฉืžื•ืคื• ืœื–ื™ื›ืจื•ืŸ ื‘ืืžืฆืขื•ืช ืคืขื•ืœืช mmap() . ื›ื“ื™ ืœื”ืฉื‘ื™ืช ื‘ืื•ืคืŸ ืกืœืงื˜ื™ื‘ื™ ืืช ื“ื—ื™ืกืช ื”ืงื‘ืฆื™ื ืขืœ ืกืžืš ืžืกื™ื›ื”, ื”ื•ืฆืขื” ืืคืฉืจื•ืช ื”ืจื›ื‘ื” ื—ื“ืฉื” nocompress.
    • ื ืขืฉืชื” ืขื‘ื•ื“ื” ื‘ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ exFAT ื›ื“ื™ ืœืฉืคืจ ืืช ื”ืชืื™ืžื•ืช ืœืื—ืกื•ืŸ ืžืฆืœืžื•ืช ื“ื™ื’ื™ื˜ืœื™ื•ืช ืžืกื•ื™ืžื•ืช.
    • ื ื•ืกืคื” ืงืจื™ืืช ื”ืžืขืจื›ืช quotactl_fd() ื”ืžืืคืฉืจืช ืœืš ืœื ื”ืœ ืžื›ืกื•ืช ืœื ื“ืจืš ืงื•ื‘ืฅ ืžื›ืฉื™ืจ ืžื™ื•ื—ื“, ืืœื ืขืœ ื™ื“ื™ ืฆื™ื•ืŸ ืžืชืืจ ืงื•ื‘ืฅ ื”ืžืฉื•ื™ืš ืœืžืขืจื›ืช ื”ืงื‘ืฆื™ื ืฉืขื‘ื•ืจื” ื—ืœื” ื”ืžื›ืกื”.
    • ืžื ื”ืœื™ ื”ื”ืชืงืŸ ื”ื™ืฉื ื™ื ืขื‘ื•ืจ ื”ืชืงื ื™ ื‘ืœื•ืง ืขื ืžืžืฉืง IDE ื”ื•ืกืจื• ืžื”ืงืจื ืœ; ื”ื ื”ื•ื—ืœืคื• ื–ื” ืžื›ื‘ืจ ืขืœ ื™ื“ื™ ืชืช-ื”ืžืขืจื›ืช libata.
    • ืžื ื”ืœ ื”ื”ืชืงืŸ "ื”ื’ื•ืœืžื™" ื”ื•ืกืจ ืžื”ืงืจื ืœ, ืžื” ืฉืžืกืคืง ื’ื™ืฉื” ืœื ืžื‘ื•ืงืจืช ืœื—ืกื™ืžืช ื”ืชืงื ื™ื ื“ืจืš ืžืžืฉืง /dev/raw. ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื–ื• ืžื™ื•ืฉืžืช ื–ื” ืžื›ื‘ืจ ื‘ื™ื™ืฉื•ืžื™ื ื”ืžืฉืชืžืฉื™ื ื‘ื“ื’ืœ O_DIRECT.
  • ืฉื™ืจื•ืชื™ ื–ื™ื›ืจื•ืŸ ื•ืžืขืจื›ืช
    • ืžืชื–ืžืŸ ื”ืžืฉื™ืžื•ืช ืžื™ื™ืฉื ืžืฆื‘ ืชื–ืžื•ืŸ ื—ื“ืฉ, SCHED_CORE, ื”ืžืืคืฉืจ ืœืš ืœืฉืœื•ื˜ ืื™ืœื• ืชื”ืœื™ื›ื™ื ื ื™ืชืŸ ืœื‘ืฆืข ื™ื—ื“ ืขืœ ืื•ืชื” ืœื™ื‘ืช ืžืขื‘ื“. ืœื›ืœ ืชื”ืœื™ืš ื ื™ืชืŸ ืœื”ืงืฆื•ืช ืžื–ื”ื” ืงื•ื‘ืฅ Cookie ื”ืžื’ื“ื™ืจ ืืช ื”ื™ืงืฃ ื”ืืžื•ืŸ ื‘ื™ืŸ ืชื”ืœื™ื›ื™ื (ืœื“ื•ื’ืžื”, ืฉื™ื™ืš ืœืื•ืชื• ืžืฉืชืžืฉ ืื• ืžื™ื›ืœ). ื‘ืขืช ืืจื’ื•ืŸ ื‘ื™ืฆื•ืข ืงื•ื“, ื”ืžืชื–ืžืŸ ื™ื›ื•ืœ ืœื”ื‘ื˜ื™ื— ืฉืœื™ื‘ืช CPU ืื—ืช ืชื”ื™ื” ืžืฉื•ืชืคืช ืจืง ื‘ื™ืŸ ืชื”ืœื™ื›ื™ื ื”ืžืฉื•ื™ื›ื™ื ืœืื•ืชื• ื‘ืขืœื™ื, ืืฉืจ ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื”ื ื›ื“ื™ ืœื—ืกื•ื ื›ืžื” ืžืชืงืคื•ืช Spectre ืขืœ ื™ื“ื™ ืžื ื™ืขืช ื”ืคืขืœืช ืžืฉื™ืžื•ืช ืžื”ื™ืžื ื•ืช ื•ืœื ืžื”ื™ืžื ื•ืช ื‘ืื•ืชื• ืฉืจืฉื•ืจ SMT (Hyper Threading) .
    • ืขื‘ื•ืจ cgroup, ื”ื•ื˜ืžืขื” ืชืžื™ื›ื” ื‘ืคืขื•ืœืช kill, ื”ืžืืคืฉืจืช ืœืš ืœื”ืจื•ื’ ืืช ื›ืœ ื”ืชื”ืœื™ื›ื™ื ื”ืงืฉื•ืจื™ื ืœืงื‘ื•ืฆื” ื‘ื‘ืช ืื—ืช (ืฉืœื— SIGKILL) ืขืœ ื™ื“ื™ ื›ืชื™ื‘ืช "1" ืœืงื•ื‘ืฅ ื”ื•ื•ื™ืจื˜ื•ืืœื™ cgroup.kill.
    • ื™ื›ื•ืœื•ืช ืžื•ืจื—ื‘ื•ืช ื”ืงืฉื•ืจื•ืช ืœืชื’ื•ื‘ื” ืœื–ื™ื”ื•ื™ ืฉืœ ืžื ืขื•ืœื™ื ืžืคื•ืฆืœื™ื ("ืžื ืขื•ืœื™ื ืžืคื•ืฆืœื™ื") ื”ืžืชืจื—ืฉื™ื ื‘ืขืช ื’ื™ืฉื” ืœื ืชื•ื ื™ื ืœื ืžื™ื•ืฉืจื™ื ื‘ื–ื™ื›ืจื•ืŸ ื‘ืฉืœ ื”ืขื•ื‘ื“ื” ืฉื‘ืขืช ื‘ื™ืฆื•ืข ื”ื•ืจืื” ืื˜ื•ืžื™ืช, ื”ื ืชื•ื ื™ื ื—ื•ืฆื™ื ืฉื ื™ ืงื•ื•ื™ ืžื˜ืžื•ืŸ ืฉืœ CPU. ื—ืกื™ืžื” ื›ื–ื• ืžื‘ื™ืื” ืœื™ืจื™ื“ื” ืžืฉืžืขื•ืชื™ืช ื‘ื‘ื™ืฆื•ืขื™ื, ื•ืœื›ืŸ ื‘ืขื‘ืจ ื ื™ืชืŸ ื”ื™ื” ืœืกื™ื™ื ื‘ื›ื•ื— ืืช ื”ืืคืœื™ืงืฆื™ื” ืฉื’ืจืžื” ืœื—ืกื™ืžื”. ื”ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื” ืžื•ืกื™ืคื” ืคืจืžื˜ืจ ืฉื•ืจืช ืคืงื•ื“ื” ืœื™ื‘ื” "split_lock_detect=ratelimit:N", ื”ืžืืคืฉืจ ืœืš ืœื”ื’ื“ื™ืจ ืžื’ื‘ืœื” ื›ืœืœ ืžืขืจื›ืชื™ืช ืขืœ ืงืฆื‘ ืคืขื•ืœื•ืช ื”ื ืขื™ืœื” ื‘ืฉื ื™ื™ื”, ืฉืœืื—ืจ ื—ืจื™ื’ื” ืžืžื ื” ื›ืœ ืชื”ืœื™ืš ืฉื”ืคืš ืœืžืงื•ืจ ืœื ืขื™ืœื” ืžืคื•ืฆืœืช ื™ื™ืืœืฅ ืœืขืฆื•ืจ ืœืžืฉืš 20 ืืœืคื™ื•ืช ื”ืฉื ื™ื™ื” ื‘ืžืงื•ื ืœื”ืคืกื™ืง.
    • ื‘ืงืจ ืจื•ื—ื‘ ื”ืคืก ืฉืœ cgroup CFS (ื‘ืงืจ ืจื•ื—ื‘ ืคืก CFS), ืฉืงื•ื‘ืข ื›ืžื” ื–ืžืŸ ืžืขื‘ื“ ื ื™ืชืŸ ืœื”ืงืฆื•ืช ืœื›ืœ cgroup, ืžื™ื™ืฉื ืืช ื”ื™ื›ื•ืœืช ืœื”ื’ื“ื™ืจ ืžื’ื‘ืœื•ืช ื–ืžืŸ ืžื•ื’ื‘ืœื•ืช, ืžื” ืฉืžืืคืฉืจ ื•ื™ืกื•ืช ื˜ื•ื‘ ื™ื•ืชืจ ืฉืœ ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืจื’ื™ืฉื™ื ืœื–ืžืŸ ื”ืฉื”ื™ื™ื”. ืœื“ื•ื’ืžื”, ื”ื’ื“ืจืช cpu.cfs_quota_us ืœ-50000 ื•-cpu.cfs_period_us ืœ-100000 ืชืืคืฉืจ ืœืงื‘ื•ืฆืช ืชื”ืœื™ื›ื™ื ืœื‘ื–ื‘ื– 100ms ืฉืœ ื–ืžืŸ CPU ื›ืœ 50ms.
    • ื ื•ืกืคื” ืชืฉืชื™ืช ืจืืฉื•ื ื™ืช ืœื™ืฆื™ืจืช ืžืขืžื™ืกื™ ืชื•ื›ื ื™ื•ืช BPF, ืฉืชืืคืฉืจ ืขื•ื“ ื™ื•ืชืจ ื˜ืขื™ื ื” ืฉืœ ืชื•ื›ื ื™ื•ืช BPF ื‘ืœื‘ื“ ื”ื—ืชื•ืžื•ืช ื‘ืžืคืชื— ื“ื™ื’ื™ื˜ืœื™ ืžื”ื™ืžืŸ.
    • ื ื•ืกืคื” ืคืขื•ืœืช futex ื—ื“ืฉื” FUTEX_LOCK_PI2, ื”ืžืฉืชืžืฉืช ื‘ื˜ื™ื™ืžืจ ืžื•ื ื•ื˜ื•ื ื™ ื›ื“ื™ ืœื—ืฉื‘ ืคืกืง ื–ืžืŸ ืฉืœื•ืงื— ื‘ื—ืฉื‘ื•ืŸ ืืช ื”ื–ืžืŸ ืฉื”ืžืขืจื›ืช ืžืฉืงื™ืขื” ื‘ืžืฆื‘ ืฉื™ื ื”.
    • ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจืช RISC-V, ืžื™ื•ืฉืžื•ืช ืชืžื™ื›ื” ื‘ื“ืคื™ ื–ื™ื›ืจื•ืŸ ื’ื“ื•ืœื™ื (Transparent Huge-Pages) ื•ื™ื›ื•ืœืช ืœื”ืฉืชืžืฉ ื‘ืžื ื’ื ื•ืŸ KFENCE ืœืื™ืชื•ืจ ืฉื’ื™ืื•ืช ื‘ืขืช ืขื‘ื•ื“ื” ืขื ื–ื™ื›ืจื•ืŸ.
    • ืงืจื™ืืช ื”ืžืขืจื›ืช madvise(), ื”ืžืกืคืงืช ืืžืฆืขื™ ืœื™ื™ืขืœ ืืช ื ื™ื”ื•ืœ ื”ื–ื™ื›ืจื•ืŸ ืฉืœ ืชื”ืœื™ืš, ื”ื•ืกื™ืคื” ืืช ื”ื“ื’ืœื™ื MADV_POPULATE_READ ื•-MADV_POPULATE_WRITE ื›ื“ื™ ืœื™ืฆื•ืจ "ืชืงืœืช ืขืžื•ื“" ื‘ื›ืœ ื“ืคื™ ื”ื–ื™ื›ืจื•ืŸ ื”ืžืžื•ืคื™ื ืœืคืขื•ืœื•ืช ืงืจื™ืื” ืื• ื›ืชื™ื‘ื”, ืžื‘ืœื™ ืœื‘ืฆืข ืงืจื™ืื” ืื• ื›ืชื™ื‘ื” ื‘ืคื•ืขืœ. (ื‘ืจื™ืจืช ืžื—ื“ืœ). ื”ืฉื™ืžื•ืฉ ื‘ื“ื’ืœื™ื ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉื™ืžื•ืฉื™ ืœืฆืžืฆื•ื ืขื™ื›ื•ื‘ื™ื ื‘ื‘ื™ืฆื•ืข ื”ืชื•ื›ื ื™ืช, ืขืงื‘ ื‘ื™ืฆื•ืข ื™ื–ื•ื ืฉืœ ื”ืžื˜ืคืœ "ืชืงืœื•ืช ืขืžื•ื“" ืขื‘ื•ืจ ื›ืœ ื”ืขืžื•ื“ื™ื ื”ืœื ืžื•ืงืฆื™ื ื‘ื‘ืช ืื—ืช, ืžื‘ืœื™ ืœื”ืžืชื™ืŸ ืœื’ื™ืฉื” ืืœื™ื”ื ื‘ืคื•ืขืœ.
    • ืžืขืจื›ืช ื‘ื“ื™ืงืช ื™ื—ื™ื“ื•ืช kunit ื”ื•ืกื™ืคื” ืชืžื™ื›ื” ืœื”ืคืขืœืช ื‘ื“ื™ืงื•ืช ื‘ืกื‘ื™ื‘ืช QEMU.
    • ืขื•ืงื‘ื™ื ื—ื“ืฉื™ื ื ื•ืกืคื•: "osnoise" ืœืžืขืงื‘ ืื—ืจ ืขื™ื›ื•ื‘ื™ื ื‘ืืคืœื™ืงืฆื™ื” ืฉื ื’ืจืžื• ืžื˜ื™ืคื•ืœ ื‘ืคืกื™ืงื•ืช, ื•-"timerlat" ืœื”ืฆื’ืช ืžื™ื“ืข ืžืคื•ืจื˜ ืขืœ ืขื™ื›ื•ื‘ื™ื ื‘ืขืช ื”ืชืขื•ืจืจื•ืช ืžืื•ืชืช ื˜ื™ื™ืžืจ.
  • ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ื•ืื‘ื˜ื—ื”
    • ืงืจื™ืืช ื”ืžืขืจื›ืช memfd_secret() ื ื•ืกืคื” ื›ื“ื™ ืœื™ืฆื•ืจ ืื–ื•ืจ ื–ื™ื›ืจื•ืŸ ืคืจื˜ื™ ื‘ืžืจื—ื‘ ื›ืชื•ื‘ื•ืช ืžื‘ื•ื“ื“, ื’ืœื•ื™ ืจืง ืœืชื”ืœื™ืš ื”ื‘ืขืœื™ื, ืœื ืžืฉืชืงืฃ ืœืชื”ืœื™ื›ื™ื ืื—ืจื™ื, ื•ืœื ื ื’ื™ืฉ ื™ืฉื™ืจื•ืช ืœืงืจื ืœ.
    • ื‘ืžืขืจื›ืช ืกื™ื ื•ืŸ ื”ืฉื™ื—ื•ืช ืฉืœ ืžืขืจื›ืช seccomp, ื‘ืขืช ื”ืขื‘ืจืช ืžื˜ืคืœื™ ื—ืกื™ืžื” ืœืžืจื—ื‘ ื”ืžืฉืชืžืฉ, ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ืคืขื•ืœื” ืื˜ื•ืžื™ืช ืื—ืช ื›ื“ื™ ืœื™ืฆื•ืจ ืžืชืืจ ืงื•ื‘ืฅ ืขื‘ื•ืจ ืžืฉื™ืžื” ืžื‘ื•ื“ื“ืช ื•ืœื”ื—ื–ื™ืจ ืื•ืชื• ื‘ืขืช ืขื™ื‘ื•ื“ ืงืจื™ืืช ืžืขืจื›ืช. ื”ืคืขื•ืœื” ื”ืžื•ืฆืขืช ืคื•ืชืจืช ืืช ื”ื‘ืขื™ื” ืฉืœ ื”ืคืจืขื” ืœืžื˜ืคืœ ื‘ืžืจื—ื‘ ื”ืžืฉืชืžืฉ ื›ืืฉืจ ืžื’ื™ืข ืื•ืช.
    • ื ื•ืกืฃ ืžื ื’ื ื•ืŸ ื—ื“ืฉ ืœื ื™ื”ื•ืœ ืžื’ื‘ืœื•ืช ืžืฉืื‘ื™ื ื‘ืžืจื—ื‘ ื”ืฉืžื•ืช ืฉืœ ืžืฉืชืžืฉ ืžื–ื”ื”, ื”ืงื•ืฉืจ ืžื•ื ื™ื ื‘ื•ื“ื“ื™ื ืฉืœ rlimit ืœืžืฉืชืžืฉ ื‘"ืžืจื—ื‘ ืฉืžื•ืช ื”ืžืฉืชืžืฉ". ื”ืฉื™ื ื•ื™ ืคื•ืชืจ ืืช ื”ื‘ืขื™ื” ื‘ืฉื™ืžื•ืฉ ื‘ืžื•ื ื”ื™ ืžืฉืื‘ื™ื ื ืคื•ืฆื™ื ื›ืืฉืจ ืžืฉืชืžืฉ ืื—ื“ ืžืจื™ืฅ ืชื”ืœื™ื›ื™ื ื‘ืงื•ื ื˜ื™ื™ื ืจื™ื ืฉื•ื ื™ื.
    • ื”ื™ืคืจื•ื•ื™ื–ืจ KVM ืœืžืขืจื›ื•ืช ARM64 ื”ื•ืกื™ืฃ ืืช ื”ื™ื›ื•ืœืช ืœื”ืฉืชืžืฉ ื‘ืชื•ืกืฃ MTE (MemTag, Memory Tagging Extension) ื‘ืžืขืจื›ื•ืช ืื•ืจื—ื•ืช, ื”ืžืืคืฉืจ ืœืงืฉื•ืจ ืชื’ื™ื ืœื›ืœ ืคืขื•ืœืช ื”ืงืฆืืช ื–ื™ื›ืจื•ืŸ ื•ืœืืจื’ืŸ ื‘ื“ื™ืงืช ืฉื™ืžื•ืฉ ื ื›ื•ืŸ ื‘ืžืฆื‘ื™ืขื™ื ื›ื“ื™ ืœื—ืกื•ื ืืช ื”ื ื™ืฆื•ืœ ืฉืœ ื ืงื•ื“ื•ืช ืชื•ืจืคื” ื”ื ื’ืจืžื•ืช ืžื’ื™ืฉื” ืœืงื•ื‘ื™ื•ืช ื–ื™ื›ืจื•ืŸ ืฉื›ื‘ืจ ืฉื•ื—ืจืจื•, ื”ืฆืคืช ืžืื’ืจ, ื’ื™ืฉื” ืœืคื ื™ ืืชื—ื•ืœ ื•ืฉื™ืžื•ืฉ ืžื—ื•ืฅ ืœื”ืงืฉืจ ื”ื ื•ื›ื—ื™.
    • ื›ืขืช ื ื™ืชืŸ ืœื”ื’ื“ื™ืจ ื‘ื ืคืจื“ ืืช ืžืชืงื ื™ ืื™ืžื•ืช ื”ืžืฆื‘ื™ืข ืฉืœ ืคืœื˜ืคื•ืจืžืช ARM64 ืขื‘ื•ืจ ืœื™ื‘ื” ื•ืžืจื—ื‘ ืžืฉืชืžืฉ. ื”ื˜ื›ื ื•ืœื•ื’ื™ื” ืžืืคืฉืจืช ืœืš ืœื”ืฉืชืžืฉ ื‘ื”ื•ืจืื•ืช ืžื™ื•ื—ื“ื•ืช ืฉืœ ARM64 ื›ื“ื™ ืœืืžืช ื›ืชื•ื‘ื•ืช ื—ื–ืจื” ื‘ืืžืฆืขื•ืช ื—ืชื™ืžื•ืช ื“ื™ื’ื™ื˜ืœื™ื•ืช ื”ืžืื•ื—ืกื ื•ืช ื‘ืกื™ื‘ื™ื•ืช ื”ืขืœื™ื•ื ื•ืช ืฉืื™ื ืŸ ื‘ืฉื™ืžื•ืฉ ืฉืœ ื”ืžืฆื‘ื™ืข ืขืฆืžื•.
    • Linux ื‘ืžืฆื‘ ืžืฉืชืžืฉ ื”ื•ืกื™ืคื” ืชืžื™ื›ื” ื‘ืฉื™ืžื•ืฉ ื‘ื“ืจื™ื™ื‘ืจื™ื ืขื‘ื•ืจ ื”ืชืงื ื™ PCI ืขื ืืคื™ืง PCI ื•ื™ืจื˜ื•ืืœื™, ื”ืžื™ื•ืฉืžืช ืขืœ ื™ื“ื™ ืžื ื”ืœ ื”ื”ืชืงืŸ PCI-over-virtio.
    • ืขื‘ื•ืจ ืžืขืจื›ื•ืช x86, ื”ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžื›ืฉื™ืจ ื”-virtio-iommu paravirtualized, ื”ืžืืคืฉืจืช ืฉืœื™ื—ืช ื‘ืงืฉื•ืช IOMMU ื›ื’ื•ืŸ ATTACH, DETACH, MAP ื•-UNMAP ื“ืจืš ื”-virtio transport ืžื‘ืœื™ ืœื—ืงื•ืช ื˜ื‘ืœืื•ืช ื“ืคื™ ื–ื™ื›ืจื•ืŸ.
    • ืขื‘ื•ืจ ืžืขื‘ื“ื™ ืื™ื ื˜ืœ, ืžืžืฉืคื—ืช Skylake ื•ืขื“ Coffee Lake, ื”ืฉื™ืžื•ืฉ ื‘-Intel TSX (Transactional Synchronization Extensions), ื”ืžืกืคืงื™ื ื›ืœื™ื ืœืฉื™ืคื•ืจ ื”ื‘ื™ืฆื•ืขื™ื ืฉืœ ื™ื™ืฉื•ืžื™ื ืžืจื•ื‘ื™ื ืขืœ ื™ื“ื™ ื‘ื™ื˜ื•ืœ ื“ื™ื ืžื™ ืฉืœ ืคืขื•ืœื•ืช ืกื ื›ืจื•ืŸ ืžื™ื•ืชืจื•ืช, ืžื•ืฉื‘ืช ื›ื‘ืจื™ืจืช ืžื—ื“ืœ. ื”ืจื—ื‘ื•ืช ืžื•ืฉื‘ืชื•ืช ืขืงื‘ ื”ืืคืฉืจื•ืช ืฉืœ ื”ืชืงืคื•ืช Zombieload ื”ืžืชืคืขืœื•ืช ื“ืœื™ืคืช ืžื™ื“ืข ื“ืจืš ืขืจื•ืฆื™ ืฆื“ ืฉืœื™ืฉื™ ื”ืžืชืจื—ืฉืช ื‘ืžื”ืœืš ืคืขื•ืœืช ืžื ื’ื ื•ืŸ ื”-TAA (TSX Asynchronous Abort).
  • ืชืช ืžืขืจื›ืช ืจืฉืช
    • ืฉื™ืœื•ื‘ ื‘ืœื™ื‘ืช MPTCP (MultiPath TCP), ื”ืจื—ื‘ื” ืฉืœ ืคืจื•ื˜ื•ืงื•ืœ TCP ืœืืจื’ื•ืŸ ืคืขื•ืœืช ื—ื™ื‘ื•ืจ TCP ืขื ืžืฉืœื•ื— ืžื ื•ืช ื‘ื• ื–ืžื ื™ืช ืœืื•ืจืš ืžืกืคืจ ืžืกืœื•ืœื™ื ื“ืจืš ืžืžืฉืงื™ ืจืฉืช ืฉื•ื ื™ื ื”ืžืฉื•ื™ื›ื™ื ืœื›ืชื•ื‘ื•ืช IP ืฉื•ื ื•ืช. ื”ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื” ืžื•ืกื™ืคื” ืžื ื’ื ื•ืŸ ืœื”ื’ื“ืจืช ืžื“ื™ื ื™ื•ืช ื’ื™ื‘ื•ื‘ ืชืขื‘ื•ืจื” ืžืฉืœืš ืขื‘ื•ืจ IPv4 ื•-IPv6 (ืžื“ื™ื ื™ื•ืช ื’ื™ื‘ื•ื‘ ืจื‘-ื ืชื™ื‘ื™ื), ื•ืžืืคืฉืจืช ืœืงื‘ื•ืข ืžืžืจื—ื‘ ื”ืžืฉืชืžืฉ ื‘ืื™ืœื• ืฉื“ื•ืช ื‘ื—ื‘ื™ืœื•ืช, ื›ื•ืœืœ ืืœื• ื”ืžื•ื‘ืœืขื•ืช, ื™ืฉืžืฉื• ื‘ืขืช ื—ื™ืฉื•ื‘ ื”-hash ืฉืงื•ื‘ืข ืืช ื‘ื—ื™ืจืช ื ืชื™ื‘ ืขื‘ื•ืจ ื”ื—ื‘ื™ืœื”.
    • ืชืžื™ื›ื” ื‘ืฉืงืขื™ SOCK_SEQPACKET (ื”ืขื‘ืจืช ื ืชื•ื ื™ื ืžืกื•ื“ืจืช ื•ืืžื™ื ื”) ื ื•ืกืคื” ืœืชืขื‘ื•ืจื” ื”ื•ื™ืจื˜ื•ืืœื™ืช ืฉืœ virtio.
    • ื”ื•ืจื—ื‘ื• ื”ื™ื›ื•ืœื•ืช ืฉืœ ืžื ื’ื ื•ืŸ ื”ืฉืงืข SO_REUSEPORT, ื”ืžืืคืฉืจ ืœืžืกืคืจ ืฉืงืขื™ ื”ืื–ื ื” ืœื”ืชื—ื‘ืจ ืœื™ืฆื™ืื” ืื—ืช ื‘ื‘ืช ืื—ืช ื›ื“ื™ ืœืงื‘ืœ ื—ื™ื‘ื•ืจื™ื ืขื ื”ืคืฆืช ื”ื‘ืงืฉื•ืช ื”ื ื›ื ืกื•ืช ื‘ื•-ื–ืžื ื™ืช ืขืœ ืคื ื™ ื›ืœ ื”ืฉืงืขื™ื ื”ืžื—ื•ื‘ืจื™ื ื‘ืืžืฆืขื•ืช SO_REUSEPORT, ืžื” ืฉืžืคืฉื˜ ืืช ื”ื™ืฆื™ืจื” ืฉืœ ื™ื™ืฉื•ืžื™ ืฉืจืช ืžืจื•ื‘ื™ ื”ืœื™ื›ื™ . ื”ื’ืจืกื” ื”ื—ื“ืฉื” ืžื•ืกื™ืคื” ื›ืœื™ื ืœื”ืขื‘ืจืช ืฉืœื™ื˜ื” ืœืฉืงืข ืื—ืจ ื‘ืžืงืจื” ืฉืœ ื›ืฉืœ ื‘ืขืช ืขื™ื‘ื•ื“ ื‘ืงืฉื” ืขืœ ื™ื“ื™ ื”ืฉืงืข ืฉื ื‘ื—ืจ ื‘ืชื—ื™ืœื” (ืคื•ืชืจืช ืืช ื”ื‘ืขื™ื” ืขื ืื•ื‘ื“ืŸ ื—ื™ื‘ื•ืจื™ื ื‘ื•ื“ื“ื™ื ื‘ืขืช ื”ืคืขืœื” ืžื—ื“ืฉ ืฉืœ ืฉื™ืจื•ืชื™ื).
  • ะžะฑะพั€ัƒะดะพะฒะฐะฝะธะต
    • ืžื ื”ืœ ื”ื”ืชืงืŸ amdgpu ืžืกืคืง ืชืžื™ื›ื” ืœืกื“ืจืช ื”-GPUs ื”ื—ื“ืฉื” ืฉืœ AMD Radeon RX 6000, ืขื ืฉื ื”ืงื•ื“ "Beige Goby" (Navi 24) ื•-"Yellow Carp", ื›ืžื• ื’ื ืชืžื™ื›ื” ืžืฉื•ืคืจืช ื‘-Aldebaran GPU (gfx90a) ื•ื‘-Van Gogh APU. ื ื•ืกืคื” ืืช ื”ื™ื›ื•ืœืช ืœืขื‘ื•ื“ ื‘ื• ื–ืžื ื™ืช ืขื ืžืกืคืจ ืœื•ื—ื•ืช eDP. ืขื‘ื•ืจ APU Renoir, ื”ื•ื˜ืžืขื” ืชืžื™ื›ื” ื‘ืขื‘ื•ื“ื” ืขื ืžืื’ืจื™ื ืžื•ืฆืคื ื™ื ื‘ื–ื™ื›ืจื•ืŸ ื•ื™ื“ืื• (TMZ, Trusted Memory Zone). ื ื•ืกืคื” ืชืžื™ื›ื” ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ื ื’ืจืคื™ื™ื ืœื ื™ืชื•ืง ื—ื. ืขื‘ื•ืจ Radeon RX 6000 (Navi 2x) GPUs ื•-AMD GPUs ื™ืฉื ื™ื ื™ื•ืชืจ, ืชืžื™ื›ืช ASPM (Active State Power Management) ืžื•ืคืขืœืช ื›ื‘ืจื™ืจืช ืžื—ื“ืœ, ืืฉืจ ื”ื™ื™ืชื” ืžื•ืคืขืœืช ื‘ืขื‘ืจ ืจืง ืขื‘ื•ืจ Navi 1x, Vega ื•-Polaris GPUs.
    • ืขื‘ื•ืจ ืฉื‘ื‘ื™ AMD, ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ื–ื™ื›ืจื•ืŸ ื•ื™ืจื˜ื•ืืœื™ ืžืฉื•ืชืฃ (SVM, ื–ื™ื›ืจื•ืŸ ื•ื™ืจื˜ื•ืืœื™ ืžืฉื•ืชืฃ) ืขืœ ื‘ืกื™ืก ืชืช-ื”ืžืขืจื›ืช HMM (ื ื™ื”ื•ืœ ื–ื™ื›ืจื•ืŸ ื”ื˜ืจื•ื’ื ื™), ื”ืžืืคืฉืจืช ืฉื™ืžื•ืฉ ื‘ืžื›ืฉื™ืจื™ื ืขื ื™ื—ื™ื“ื•ืช ื ื™ื”ื•ืœ ื–ื™ื›ืจื•ืŸ ืžืฉืœื”ื (MMU, ื™ื—ื™ื“ืช ื ื™ื”ื•ืœ ื–ื™ื›ืจื•ืŸ). ืฉื™ื›ื•ืœ ืœื’ืฉืช ืœื–ื™ื›ืจื•ืŸ ื”ืจืืฉื™. ื‘ืคืจื˜, ื‘ืืžืฆืขื•ืช HMM, ืืชื” ื™ื›ื•ืœ ืœืืจื’ืŸ ืžืจื—ื‘ ื›ืชื•ื‘ื•ืช ืžืฉื•ืชืฃ ื‘ื™ืŸ ื”-GPU ื•ื”-CPU, ืฉื‘ื• ื”-GPU ื™ื›ื•ืœ ืœื’ืฉืช ืœื–ื™ื›ืจื•ืŸ ื”ืจืืฉื™ ืฉืœ ื”ืชื”ืœื™ืš.
    • ื ื•ืกืคื” ืชืžื™ื›ื” ืจืืฉื•ื ื™ืช ื‘ื˜ื›ื ื•ืœื•ื’ื™ื™ืช AMD Smart Shift, ื”ืžืฉื ื” ื‘ืื•ืคืŸ ื“ื™ื ืžื™ ืืช ื”ื’ื“ืจื•ืช ื›ื•ื— ื”ืžืขื‘ื“ ื•ื”-GPU ื‘ืžื—ืฉื‘ื™ื ื ื™ื™ื“ื™ื ืขื ืขืจื›ืช ืฉื‘ื‘ื™ื ื•ื›ืจื˜ื™ืก ื’ืจืคื™ ืฉืœ AMD ื›ื“ื™ ืœื”ื’ื‘ื™ืจ ืืช ื”ื‘ื™ืฆื•ืขื™ื ืขื‘ื•ืจ ืžืฉื—ืงื™ื, ืขืจื™ื›ืช ื•ื™ื“ืื• ื•ืขื™ื‘ื•ื“ ืชืœืช ืžื™ืžื“.
    • ืžื ื”ืœ ื”ื”ืชืงืŸ i915 ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ ืžืกืš ืฉืœ ืื™ื ื˜ืœ ื›ื•ืœืœ ืชืžื™ื›ื” ื‘ืฉื‘ื‘ื™ Intel Alderlake P.
    • ื ื•ืกืฃ ืžื ื”ืœ ื”ืชืงืŸ drm/hyperv ืขื‘ื•ืจ ืžืชืื ื’ืจืคื™ ื•ื™ืจื˜ื•ืืœื™ Hyper-V.
    • ื ื•ืกืคื” ืชืžื™ื›ื” ืœืžื—ืฉื‘ Raspberry Pi 400 All-in-One.
    • ื ื•ืกืฃ ืžื ื”ืœ ื”ืชืงืŸ dell-wmi-privacy ืœืชืžื™ื›ื” ื‘ืžืฆืœืžืช ื”ื—ื•ืžืจื” ื•ืžืชื’ื™ ื”ืžื™ืงืจื•ืคื•ืŸ ื”ื›ืœื•ืœื™ื ื‘ืžื—ืฉื‘ื™ื ื ื™ื™ื“ื™ื ืฉืœ Dell.
    • ืขื‘ื•ืจ ืžื—ืฉื‘ื™ื ื ื™ื™ื“ื™ื ืฉืœ Lenovo, ื”ืชื•ื•ืกืฃ ืžืžืฉืง WMI ืœืฉื™ื ื•ื™ ื”ื’ื“ืจื•ืช BIOS ื‘ืืžืฆืขื•ืช sysfs /sys/class/firmware-attributes/.
    • ืชืžื™ื›ื” ืžื•ืจื—ื‘ืช ื‘ืžื›ืฉื™ืจื™ื ืขื ืžืžืฉืง USB4.
    • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ื›ืจื˜ื™ืกื™ ื”ืงื•ืœ ื•ื”ืงื•ื“ืงื™ื ืฉืœ ื—ื‘ืจืช Qualcomm Quinary MI1, Intel AlderLake-M, NXP i.MX8, NXP TFA1, TDF9897, Rockchip RK817, Qualcomm Quinary MI2 ื•- Texas Instruments TAS2505. ืชืžื™ื›ืช ืฉืžืข ืžืฉื•ืคืจืช ื‘ืžื—ืฉื‘ื™ื ื ื™ื™ื“ื™ื ืฉืœ HP ื•-ASUS. ื ื•ืกืคื• ืชื™ืงื•ื ื™ื ื›ื“ื™ ืœื”ืคื—ื™ืช ืขื™ื›ื•ื‘ื™ื ืœืคื ื™ ืฉื”ืฉืžืข ืžืชื—ื™ืœ ืœื”ืชื ื’ืŸ ื‘ื”ืชืงื ื™ USB.

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

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