เบเบฒเบ™เบ›เปˆเบญเบเป€เบ„เบตเป€เบ™เบฅ Linux 5.15

เบซเบผเบฑเบ‡เบˆเบฒเบเบชเบญเบ‡เป€เบ”เบทเบญเบ™เบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ, Linus Torvalds เป„เบ”เป‰เบ›เปˆเบญเบ kernel เบญเบญเบ. Linux 5.15. เปƒเบ™เบšเบฑเบ™เบ”เบฒเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเป‚เบ”เบ”เป€เบ”เบฑเปˆเบ™เบ—เบตเปˆเบชเบธเบ”: เป„เบ”เบฃเป€เบงเบต NTFS เปƒเปเปˆเบ—เบตเปˆเบฎเบญเบ‡เบฎเบฑเบšเบเบฒเบ™เบ‚เบฝเบ™, เป‚เบกเบ”เบนเบ™ ksmbd เบ—เบตเปˆเบกเบตเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบŠเบตเบšเป€เบงเบต SMB, เบฅเบฐเบšเบปเบšเบเปˆเบญเบ DAMON เบชเบณเบฅเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เปœเปˆเบงเบเบ„เบงเบฒเบกเบˆเบณ, เบเบฒเบ™เบฅเบฑเบญเบเบžเบทเป‰เบ™เบ–เบฒเบ™เบชเบณเบฅเบฑเบšเป‚เปเบ”เป€เบงเบฅเบฒเบˆเบดเบ‡, เบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš fs-verity เปƒเบ™ Btrfs, เบเบฒเบ™เป€เบญเบตเป‰เบ™เบฅเบฐเบšเบปเบš process_mrelease เบชเบณเบฅเบฑเบšเบฅเบฐเบšเบปเบšเบ•เบญเบšเบชเบฐเปœเบญเบ‡เปœเปˆเบงเบเบ„เบงเบฒเบกเบˆเบณเบ•เปˆเบณ, เปเบฅเบฐเป‚เบกเบ”เบนเบ™เบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เบ—เบฒเบ‡เป„เบ dm-ima.

เบฎเบธเปˆเบ™เปƒเบซเบกเปˆเบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚ 13499 เบˆเบฒเบเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ 1888, เบ‚เบฐเบซเบ™เบฒเบ” patch เปเบกเปˆเบ™ 42 MB (เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบœเบปเบ™เบเบฐเบ—เบปเบš 10895 เป„เบŸเบฅเปŒ, 632522 เป€เบชเบฑเป‰เบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบ–เบทเบเป€เบžเบตเปˆเบก, 299966 เป€เบชเบฑเป‰เบ™เบ–เบทเบเบฅเบถเบš). เบ›เบฐเบกเบฒเบ™ 45% เบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบ™ 5.15 เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเป„เบ”เป€เบงเบตเบญเบธเบ›เบฐเบเบญเบ™, เบ›เบฐเบกเบฒเบ™ 14% เบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบฅเบฐเบซเบฑเบ”เบชเบฐเป€เบžเบฒเบฐเบเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบฎเบฒเบ”เปเบง, 14% เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš stack เป€เบ„เบทเบญเบ‚เปˆเบฒเบ, 6% เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ, เปเบฅเบฐ 3% เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบฅเบฐเบšเบปเบšเบเปˆเบญเบ kernel เบžเบฒเบเปƒเบ™.

เบ™เบฐเบงเบฑเบ”เบ•เบฐเบเปเบฒเบ•เบปเป‰เบ™เบ•เป:

  • เบฅเบฐเบšเบปเบšเบเปˆเบญเบเปเบœเปˆเบ™, I/O เปเบฅเบฐเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ
    • kernel เป„เบ”เป‰เบฎเบฑเบšเบฎเบญเบ‡เป€เบญเบปเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบซเบกเปˆเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ NTFS, เป€เบ›เบตเบ”เป‚เบ”เบ Paragon Software. เป„เบ”เป€เบงเบตเปƒเบซเบกเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เป‚เบซเบกเบ”เบเบฒเบ™เบ‚เบฝเบ™เปเบฅเบฐเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡ NTFS 3.1 เบฎเบธเปˆเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™, เบฅเบงเบกเบ—เบฑเบ‡เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ—เบตเปˆเบ‚เบฐเบซเบเบฒเบ, เบฅเบฒเบเบŠเบทเปˆเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ (ACLs), เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบšเบตเบšเบญเบฑเบ”เบ‚เปเป‰เบกเบนเบ™, เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบเบฑเบšเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เบขเบนเปˆเปƒเบ™เป„เบŸเบฅเปŒ (sparse) เปเบฅเบฐ replaying เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบˆเบฒเบ เบšเบฑเบ™เบ—เบถเบเป€เบžเบทเปˆเบญเบŸเบทเป‰เบ™เบŸเบนเบ„เบงเบฒเบกเบชเบปเบกเบšเบนเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบฅเบง .
    • เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ Btrfs เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบปเบ™เป„เบ fs-verity, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ„เบงเบšเบ„เบธเบกเบ„เบงเบฒเบกเบŠเบทเปˆเบชเบฑเบ”เปเบฅเบฐเบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เป„เบŸเบฅเปŒเบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เบขเปˆเบฒเบ‡เป‚เบ›เปˆเบ‡เปƒเบชเป‚เบ”เบเปƒเบŠเป‰ hashes cryptographic เบซเบผเบทเบเบฐเปเบˆเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเป„เบŸเบฅเปŒ, เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆ metadata. เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰, fs-verity เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบเบฑเบšเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ Ext4 เปเบฅเบฐ F2fs เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™.

      Btrfs เบเบฑเบ‡เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบœเบ™เบ—เบตเปˆ ID เบœเบนเป‰เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเบ•เบดเบ”เบ•เบฑเป‰เบ‡ (เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ FAT, ext4 เปเบฅเบฐ XFS). เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเป„เบŸเบฅเปŒเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบชเบฐเป€เบžเบฒเบฐเบขเบนเปˆเปƒเบ™เบžเบฒเบ—เบดเบŠเบฑเบ™เบ•เปˆเบฒเบ‡เบ›เบฐเป€เบ—เบ”เบ—เบตเปˆเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบญเบทเปˆเบ™เปƒเบ™เบฅเบฐเบšเบปเบšเบ›เบฐเบˆเบธเบšเบฑเบ™.

      เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบญเบทเปˆเบ™เป†เบ‚เบญเบ‡ Btrfs เบ›เบฐเบเบญเบšเบกเบต: เบเบฒเบ™เป€เบžเบตเปˆเบกเป„เบงเบ‚เบญเบ‡เบ„เบตเบเบฑเบšเบ”เบฑเบ”เบชเบฐเบ™เบตเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเป€เบžเบทเปˆเบญเบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเป‰เบฒเบ‡เป„เบŸเบฅเปŒ; เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ raid0 เบเบฑเบšเบญเบธเบ›เบฐเบเบญเบ™เบซเบ™เบถเปˆเบ‡, เปเบฅเบฐ raid10 เบเบฑเบšเบชเบญเบ‡ (เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ‚เบญเบ‡ reconfigure array); เบ—เบฒเบ‡เป€เบฅเบทเบญเบ "rescue = ibadroots" เบ—เบตเปˆเบˆเบฐเบšเปเปˆเบชเบปเบ™เปƒเบˆเบ•เบปเป‰เบ™เป„เบกเป‰เปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡; เบเบฒเบ™เป€เบฅเบฑเปˆเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™ "เบชเบปเปˆเบ‡"; เบเบฒเบ™เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เบงเบฒเบกเบ‚เบฑเบ”เปเบเป‰เบ‡เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบฅเบฑเบญเบเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ›เปˆเบฝเบ™เบŠเบทเปˆ; เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ‚เบฐเปเบซเบ™เบ‡ 4K เปƒเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบกเบตเบ‚เบฐเบซเบ™เบฒเบ”เบซเบ™เป‰เบฒเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ 64K.

    • เปƒเบ™ XFS, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบงเบฑเบ™เบ—เบตเบซเบผเบฑเบ‡เบˆเบฒเบ 2038 เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเป„เบ”เป‰เบ–เบทเบเบชเบฐเบ–เบฝเบ™เบฅเบฐเบžเบฒเบš. เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบปเบ™เป„เบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบดเบ” inode เบŠเบฑเบเบŠเป‰เบฒเปเบฅเบฐเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบŠเบฑเบเบŠเป‰เบฒเปเบฅเบฐเบเบฒเบ™เป‚เบเบเบเป‰เบฒเบเบ‚เบญเบ‡เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเป„เบŸเบฅเปŒ. เป€เบžเบทเปˆเบญเบฅเบปเบšเบฅเป‰เบฒเบ‡เบšเบฑเบ™เบซเบฒ, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เป‚เบ„เบ•เป‰เบฒเบ‚เบญเบ‡เปเบœเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบžเบฒเบ—เบดเบŠเบฑเบ™เบ—เบตเปˆเบ•เบดเบ”เบขเบนเปˆเปเบฅเป‰เบงเป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบ (เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เป‚เบ„เบ•เป‰เบฒเบขเปˆเบฒเบ‡เบซเบ™เบฑเบเปเบซเบ™เป‰เบ™, เปเบ•เปˆเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบžเบงเบเบกเบฑเบ™เบˆเบฐเบชเบทเบšเบ•เปเปˆ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบ•เบดเบ”เปƒเบซเบกเปˆเปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบ›เบดเบ”เบžเบงเบเบกเบฑเบ™เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™).
    • เปƒเบ™ EXT4, เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ•เบดเบžเบฒเบšเบ‚เบญเบ‡เบเบฒเบ™เบ‚เบฝเบ™ delalloc buffers เปเบฅเบฐเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เป„เบŸเบฅเปŒเป€เบ”เบฑเบเบเปเบฒเบžเป‰เบฒเบ—เบตเปˆเบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบžเบงเบเบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เป€เบ›เบตเบ”เบขเบนเปˆ, เปเบ•เปˆเบšเปเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบต. เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบเบปเบเป€เบฅเบตเบเป„เบ”เป‰เบ–เบทเบเบเป‰เบฒเบเบญเบญเบเบˆเบฒเบเบเบฐเบ—เบนเป‰ jbd2 kthread เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบชเบฐเบเบฑเบ”เบเบฑเป‰เบ™เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบเบฑเบš metadata.
    • F2FS เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ•เบปเบงเป€เบฅเบทเบญเบ "discard_unit=block|segment|section" เป€เบžเบทเปˆเบญเบœเบนเบเบกเบฑเบ”เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบเบปเบเป€เบฅเบตเบ (เปเบฒเบเป€เบ–เบดเบ‡เบšเบฅเบฑเบญเบเบ—เบตเปˆเบ–เบทเบเบ›เบปเบ”เบ›เปˆเบญเบเบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เบ—เบฒเบ‡เบฎเปˆเบฒเบ‡เบเบฒเบเบญเบตเบเบ•เปเปˆเป„เบ›) เบ•เปเปˆเบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบฎเบฝเบ‡เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบšเบฅเบฑเบญเบ, เบ‚เบฐเปเบซเบ™เบ‡เบเบฒเบ™, เบžเบฒเบเบชเปˆเบงเบ™ เบซเบผเบทเบžเบฒเบเบชเปˆเบงเบ™. เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™ I/O latency.
    • เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ EROFS (Extendable Read-Only File System) เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš I/O เป‚เบ”เบเบเบปเบ‡เบชเบณเบฅเบฑเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบšเบตเบšเบญเบฑเบ”, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš fiemap.
    • OverlayFS เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡ mount flags "immutable", "append-only", "sync" เปเบฅเบฐ "noatime".
    • NFS เป„เบ”เป‰เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเป€เบŠเบตเบšเป€เบงเบต NFS เบขเบธเบ”เบ•เบญเบšเบชเบฐเปœเบญเบ‡เบ•เปเปˆเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป. เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบˆเบฒเบเป€เบŠเบตเบšเป€เบงเบตเบ—เบตเปˆเปƒเบŠเป‰เปเบฅเป‰เบงเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเบกเบฒ. เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เปเบ•เปˆเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป„เบ”เป‰เบœเปˆเบฒเบ™เบ—เบตเปˆเบขเบนเปˆเป€เบ„เบทเบญเบ‚เปˆเบฒเบเบญเบทเปˆเบ™.
    • เบเบฒเบ™โ€‹เบเบฐโ€‹เบเบฝเบกโ€‹เป„เบ”เป‰โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ‚เบฝเบ™โ€‹เปƒเบซเบกเปˆโ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹เบเปˆเบญเบ FSCACHEโ€‹.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบšเปˆเบ‡เบชเปˆเบงเบ™ EFI เบ”เป‰เบงเบเบเบฒเบ™เบงเบฒเบ‡เบ•เปเบฒเปเบซเบ™เปˆเบ‡เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ GPT.
    • เบเบปเบ™เป„เบ fanotify เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบธเบ‡เปƒเบซเบกเปˆ, FAN_REPORT_PIDFD, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰ pidfd เบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™ metadata เบเบฑเบšเบ„เบทเบ™เบกเบฒ. Pidfd เบŠเปˆเบงเบเบˆเบฑเบ”เบเบฒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปƒเบŠเป‰ PID เบ„เบทเบ™เปƒเปเปˆเป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป„เบŸเบฅเปŒเบ—เบตเปˆเบ–เบทเบเบเบงเบ”เบชเบญเบšเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เบเบงเปˆเบฒ (pidfd เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบชเบฐเป€เบžเบฒเบฐเปเบฅเบฐเบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ PID เบชเบฒเบกเบฒเบ”เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เป„เบ”เป‰เบซเบผเบฑเบ‡เบˆเบฒเบเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš PID เบ™เบฑเป‰เบ™เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡).
    • เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเบˆเบธเบ”เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปƒเบซเป‰เบเบฑเบšเบเบธเปˆเบกเบ—เบตเปˆเปเบšเปˆเบ‡เบ›เบฑเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเปƒเบซเป‰เบเบฑเบšเบเบฒเบ™เป‚เบ—เบฅเบฐเบšเบปเบš move_mount() เป€เบŠเบดเปˆเบ‡เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบฐเบซเบเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเบชเบฐเบ–เบฒเบ™เบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™ CRIU เป€เบกเบทเปˆเบญเบกเบตเบžเบทเป‰เบ™เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบซเบผเบฒเบเบ—เบตเปˆเปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบ™เปƒเบ™เบ–เบฑเบ‡เบ—เบตเปˆเป‚เบ”เบ”เบ”เปˆเบฝเบง.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เป€เบŠเบทเป‰เบญเบŠเบฒเบ”เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบ„เบงเบฒเบกเป€เบชเบเบซเบฒเบเบ‚เบญเบ‡เป„เบŸเบฅเปŒเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบญเปˆเบฒเบ™ cache เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบ›เบฐเบกเบงเบ™เบœเบปเบ™ voids เปƒเบ™เป„เบŸเบฅเปŒ.
    • เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบฅเบฑเบญเบเป„เบŸเบฅเปŒเปเบšเบšเบšเบฑเบ‡เบ„เบฑเบš (เบšเบฑเบ‡เบ„เบฑเบš), เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™เบชเบฐเบเบฑเบ”เบเบฒเบ™เป‚เบ—เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบŸเบฅเปŒ, เป„เบ”เป‰เบ–เบทเบเบขเบธเบ”เป€เบŠเบปเบฒ. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰, locks เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ–เบทเบเบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบงเปˆเบฒเบšเปเปˆเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญเบ–เบทเปเบฅเบฐเบ–เบทเบเบ›เบฐเบ•เบดเป€เบชเบ”เบซเบผเบฒเบเบ›เบตเบเปˆเบญเบ™.
    • เบฅเบฐเบšเบปเบšเบเปˆเบญเบ LightNVM เป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบ, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป„เบ” SSD เป‚เบ”เบเบเบปเบ‡, เบ‚เป‰เบฒเบกเบŠเบฑเป‰เบ™ emulation. LightNVM เป„เบ”เป‰เบชเบนเบ™เป€เบชเบเบ„เบงเบฒเบกเบซเบกเบฒเบเบ‚เบญเบ‡เบกเบฑเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบกเบฒเป€เบ–เบดเบ‡เบ‚เบญเบ‡เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ NVMe เบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เปเบšเปˆเบ‡เป€เบ‚เบ” (ZNS, Zoned Namespace).
  • เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบฅเบฐเบšเบปเบš
    • เบฅเบฐเบšเบปเบšเบเปˆเบญเบ DAMON (Data Access Monitor) เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบเบดเบ”เบˆเบฐเบเปเบฒเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™ RAM เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเป€เบฅเบทเบญเบเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰. เบฅเบฐเบšเบปเบšเบเปˆเบญเบเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบžเบทเป‰เบ™เบ—เบตเปˆเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเบ—เบตเปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบกเบฑเบ™, เปเบฅเบฐเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปƒเบ”เบ—เบตเปˆเบเบฑเบ‡เบšเปเปˆเป„เบ”เป‰เบญเป‰เบฒเบ‡เบชเบดเบ”. DAMON เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบเบฒเบ™เป‚เบซเบผเบ” CPU เบ•เปˆเปเบฒ, เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ•เปˆเปเบฒ, เบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบชเบนเบ‡เปเบฅเบฐเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบ„เบปเบ‡เบ—เบตเปˆ overhead, เบšเปเปˆเบ‚เบถเป‰เบ™เบเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”. เบฅเบฐเบšเบปเบšเบเปˆเบญเบเบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰เบ—เบฑเบ‡เบชเบญเบ‡เป‚เบ”เบ kernel เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เปเบฅเบฐเป‚เบ”เบเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ”เบเปเบฒเบฅเบฑเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปเบฅเบฐเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบ›เบปเบ”เบ›เปˆเบญเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเป€เบเบตเบ™เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบš.
    • เบเบฒเบ™เป€เบญเบตเป‰เบ™เบฅเบฐเบšเบปเบš process_mrelease เป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเป‰เบง, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบเบฒเบ™เบ›เปˆเบญเบเปœเปˆเบงเบเบ„เบงเบฒเบกเบˆเบณเป„เบงเบ‚เบถเป‰เบ™เบชเบณเบฅเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบขเบธเบ”เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบกเบฑเบ™. เบžเบฒเบเปƒเบ•เป‰เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ›เบปเบเบเบฐเบ•เบด, เบเบฒเบ™เบ›เปˆเบญเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ เปเบฅเบฐ เบเบฒเบ™เบขเบธเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบšเปเปˆเปเบกเปˆเบ™เบ—เบฑเบ™เบ—เบต เปเบฅเบฐ เบชเบฒเบกเบฒเบ”เบŠเบฑเบเบŠเป‰เบฒเป„เบ”เป‰เบ”เป‰เบงเบเป€เบซเบ”เบœเบปเบ™เบ•เปˆเบฒเบ‡เป†, เป€เบŠเบดเปˆเบ‡เบฅเบปเบšเบเบงเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป€เบ•เบทเบญเบ™เป„เบžเบฅเปˆเบงเบ‡เปœเป‰เบฒเบ„เบงเบฒเบกเบเบปเบ”เบ”เบฑเบ™เบ‚เบญเบ‡เปœเปˆเบงเบเบ„เบงเบฒเบกเบˆเบณเบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰ เป€เบŠเบฑเปˆเบ™ oomd (เบชเบฐเปœเบญเบ‡เปƒเบซเป‰เป‚เบ”เบ systemd) เปเบฅเบฐ lmkd (เปƒเบŠเป‰เปƒเบ™ Android). เป‚เบ”เบเบเบฒเบ™เป€เบญเบตเป‰เบ™ process_mrelease, เบฅเบฐเบšเบปเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบเบนเป‰เบ„เบทเบ™เปœเปˆเบงเบเบ„เบงเบฒเบกเบˆเบณเบˆเบฒเบเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบ–เบทเบเบขเบธเบ”เป‚เบ”เบเบšเบฑเบ‡เบ„เบฑเบšเป„เบ”เป‰เบขเปˆเบฒเบ‡เบ„เบฒเบ”เป€เบ”เบปเบฒเป„เบ”เป‰เบซเบผเบฒเบเบเบงเปˆเบฒ.
    • เบˆเบฒเบเบชเบฒเบ‚เบฒ PREEMPT_RT, เป€เบŠเบดเปˆเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡, variants เบ‚เบญเบ‡ primitives เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบฅเบฐเบšเบฝเบš locks mutex, ww_mutex, rw_semaphore, spinlock เปเบฅเบฐ rwlock, เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบฅเบฐเบšเบปเบšเบเปˆเบญเบ RT-Mutex, เป„เบ”เป‰เบ–เบทเบเป‚เบญเบ™. เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆ SLUB slab allocator เป€เบžเบทเปˆเบญเบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เปƒเบ™เป‚เบซเบกเบ” PREEMPT_RT เปเบฅเบฐเบซเบผเบธเบ”เบœเปˆเบญเบ™เบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบเบฒเบ™เบฅเบปเบšเบเบงเบ™.
    • เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบงเบฝเบ SCHED_IDLE เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™ cgroup, เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเบฐเบซเบ™เบญเบ‡เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ™เบตเป‰เปƒเบซเป‰เบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบเบธเปˆเบกเบ—เบตเปˆเบฅเบงเบกเบขเบนเปˆเปƒเบ™ cgroup เบชเบฐเป€เบžเบฒเบฐ. เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เบ‚เบฐโ€‹เบšเบงเบ™โ€‹เบเบฒเบ™โ€‹เป€เบซเบผเบปเปˆเบฒโ€‹เบ™เบตเป‰โ€‹เบˆเบฐโ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เบเบฒเบ™โ€‹เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบญเบทเปˆเบ™เป†โ€‹เบ—เบตเปˆโ€‹เบฅเปโ€‹เบ–เป‰เบฒโ€‹เปƒเบซเป‰โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เปƒเบ™โ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹. เบšเปเปˆเบ„เบทเบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” SCHED_IDLE เปƒเบซเป‰เบเบฑเบšเปเบ•เปˆเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบ•เปˆเบฅเบฐเบญเบฑเบ™, เป€เบกเบทเปˆเบญเบœเบนเบเบกเบฑเบ” SCHED_IDLE เบเบฑเบš cgroup, เบ™เป‰เบณเปœเบฑเบเบ—เบตเปˆเบชเบปเบกเบ—เบฝเบšเบ‚เบญเบ‡เปœเป‰เบฒเบงเบฝเบเบžเบฒเบเปƒเบ™เบเบธเปˆเบกเปเบกเปˆเบ™เบ„เบณเบ™เบถเบ‡เป€เบ–เบดเบ‡เป€เบกเบทเปˆเบญเป€เบฅเบทเบญเบเปœเป‰เบฒเบงเบฝเบเบ—เบตเปˆเบˆเบฐเบ”เบณเป€เบ™เบตเบ™เบเบฒเบ™.
    • เบเบปเบ™เป„เบเบเบฒเบ™เบšเบฑเบ™เบŠเบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปƒเบ™ cgroup เป„เบ”เป‰เบ–เบทเบเบ‚เบฐเบซเบเบฒเบเบญเบญเบเบ”เป‰เบงเบเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™ kernel เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เบฅเบงเบกเบ—เบฑเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฅเบปเบ‡เบ„เบฐเปเบ™เบ™เบชเบฝเบ‡, เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบชเบฑเบ™เบเบฒเบ™เปเบฅเบฐ namespaces.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบ—เบตเปˆเบšเปเปˆเบชเบญเบ”เบ„เปˆเบญเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบงเบฝเบเบ‡เบฒเบ™เบเบฑเบšเปเบเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเปƒเบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบ—เบตเปˆเบšเบฒเบ‡ CPU เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบงเบฝเบเบ‡เบฒเบ™ 32 เบšเบดเบ”, เปเบฅเบฐเบšเบฒเบ‡เบญเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบžเบฝเบ‡เปเบ•เปˆเปƒเบ™เป‚เบซเบกเบ” 64 เบšเบดเบ” (เบ•เบปเบงเบขเปˆเบฒเบ‡, ARM). เบฎเบนเบšเปเบšเบšเปƒเบซเบกเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบžเบฝเบ‡เปเบ•เปˆ CPU เบ—เบตเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบงเบฝเบเบ‡เบฒเบ™ 32-bit เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบงเบฝเบเบ‡เบฒเบ™ 32-bit.
    • เบญเบดเบ™เป€เบ•เบตเป€เบŸเบ” io_uring asynchronous I/O เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เป€เบ›เบตเบ”เป„เบŸเบฅเปŒเป‚เบ”เบเบเบปเบ‡เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ”เบฑเบ”เบชเบฐเบ™เบตเป„เบŸเบฅเปŒเบ„เบปเบ‡เบ—เบตเปˆ, เป‚เบ”เบเบšเปเปˆเบ•เป‰เบญเบ‡เปƒเบŠเป‰เบ•เบปเบงเบญเบฐเบ—เบดเบšเบฒเบเป„เบŸเบฅเปŒ, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”, เปเบ•เปˆเบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบกเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™ Unix เปเบšเบšเบ”เบฑเป‰เบ‡เป€เบ”เบตเบกเบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเบญเบฐเบ—เบดเบšเบฒเบเป„เบŸเบฅเปŒ. เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เป„เบŸเบฅเปŒ.

      io_uring เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเบเปˆเบญเบ BIO (Block I/O Layer) เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบปเบ™เป„เบเบเบฒเบ™เบฅเบตเป„เบŠเป€เบ„เบตเบ™เปƒเบซเบกเปˆ ("BIO recycling"), เป€เบŠเบดเปˆเบ‡เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบžเบฒเบเปƒเบ™เปเบฅเบฐเป€เบžเบตเปˆเบกเบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡ I/O เบ•เปเปˆเบงเบดเบ™เบฒเบ—เบตเบ›เบฐเบกเบฒเบ™ 10%. . io_uring เบเบฑเบ‡เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš mkdirat(), symlinkat() เปเบฅเบฐ linkat() เบเบฒเบ™เป‚เบ—เบฅเบฐเบšเบปเบš.

    • เบชเปเบฒเบฅเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™ BPF, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเปเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเบฑเบšเป€เบงเบฅเบฒเป€เบซเบ”เบเบฒเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”. เป€เบ„เบทเปˆเบญเบ‡ iterator เบชเปเบฒเบฅเบฑเบš socket UNIX เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก, เปเบฅเบฐเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเบเปเบฒเบ™เบปเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบ socket เบชเปเบฒเบฅเบฑเบš setsockopt เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”. BTF dumper เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ‚เปเป‰เบกเบนเบ™เบžเบดเบก.
    • เปƒเบ™เบฅเบฐเบšเบปเบš NUMA เบ—เบตเปˆเบกเบตเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ›เบฐเป€เบžเบ”เบ•เปˆเบฒเบ‡เป†เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”, เป€เบกเบทเปˆเบญเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เบซเบกเบปเบ”, เบซเบ™เป‰เบฒเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบตเปˆเบ–เบทเบเบ‚เบฑเบšเป„เบฅเปˆเบˆเบฐเบ–เบทเบเป‚เบญเบ™เบˆเบฒเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบง (DRAM) เป„เบ›เบชเบนเปˆเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ–เบฒเบงเบญเบ™เบŠเป‰เบฒเบฅเบปเบ‡ (เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ„เบปเบ‡เบ—เบตเปˆ) เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบฅเบถเบšเบซเบ™เป‰เบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป„เบ”เป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบกเบตเบชเบดเบ”เป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบฅเบฐเบšเบปเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. NUMA เบเบฑเบ‡เบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เบชเบฑเบ™เบซเบ™เป‰เบฒเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบชเปเบฒเบฅเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเบฒเบเบŠเบธเบ”เบ‚เบญเบ‡ NUMA nodes เบ—เบตเปˆเป€เบฅเบทเบญเบ.
    • เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒ ARC, เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบ™เป‰เบฒเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบชเบฒเบกเปเบฅเบฐเบชเบตเปˆเบฅเบฐเบ”เบฑเบšเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต ARC 64 เบšเบดเบ”เบ•เบทเปˆเบกเบญเบตเบ.
    • เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒ s390, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบปเบ™เป„เบ KFENCE เป€เบžเบทเปˆเบญเบเบงเบ”เบžเบปเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เปเบฅเบฐเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบเบงเบ”เบˆเบฑเบšเบชเบฐเบžเบฒเบšเป€เบŠเบทเป‰เบญเบŠเบฒเบ” KCSAN เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบตเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบญเบญเบเป‚เบ”เบเบœเปˆเบฒเบ™ printk(), เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ”เบถเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰.
    • mmap() เป„เบ”เป‰เบ–เบญเบ™เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ VM_DENYWRITE, เปเบฅเบฐเบฅเบฐเบซเบฑเบ” kernel เป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเบˆเบฒเบเบเบฒเบ™เปƒเบŠเป‰เป‚เบซเบกเบ” MAP_DENYWRITE, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบซเบผเบธเบ”เบฅเบปเบ‡เบˆเปเบฒเบ™เบงเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบšเบฅเบฑเบญเบเบเบฒเบ™เบ‚เบฝเบ™เป„เบ›เบซเบฒเป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” ETXTBSY.
    • เบ›เบฐเป€เบžเบ”เปƒเบซเบกเปˆเบ‚เบญเบ‡เบเบฒเบ™เบเบงเบ”เบชเบญเบš, "เบเบฒเบ™เบชเบทเบšเบชเบงเบ™เป€เบซเบ”เบเบฒเบ™," เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบฅเบฐเบšเบปเบšเบเปˆเบญเบเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบเบฑเบšเป€เบซเบ”เบเบฒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง, เบเปเบฒเบ™เบปเบ”เบฎเบนเบšเปเบšเบšเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡.
    • เป€เบกเบทเปˆเบญเบชเป‰เบฒเบ‡ kernel เป‚เบ”เบเปƒเบŠเป‰ Clang compiler, เบ•เบปเบงเบ›เบฐเบเบญเบšเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™ LLVM เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™.
    • เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบเปเบฒเบˆเบฑเบ” kernel เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เป€เบ•เบทเบญเบ™เป„เบžเบ–เบทเบเบญเบญเบเป‚เบ”เบ compiler, เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เป„เบ”เป‰เบ–เบทเบเบ”เปเบฒเป€เบ™เบตเบ™เบ”เป‰เบงเบ "-Werror" เบฎเบนเบšเปเบšเบšเบเบฒเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เปƒเบ™เบ„เปเบฒเป€เบ•เบทเบญเบ™ compiler เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”. เปƒเบ™เบเบฒเบ™เบเบฐเบเบฝเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบญเบ 5.15, Linus เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆเบˆเบฐเบเบญเบกเบฎเบฑเบšเบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบšเปเปˆเบกเบตเบœเบปเบ™เปƒเบ™เบ„เปเบฒเป€เบ•เบทเบญเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ kernel เปเบฅเบฐเป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ”เป‰เบงเบ "-Werror", เปเบ•เปˆเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ•เบปเบเบฅเบปเบ‡เป€เบซเบฑเบ™เบ”เบตเบงเปˆเบฒเบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบกเปˆเบ™เป„เบงเปเบฅเบฐเบŠเบฑเบเบŠเป‰เบฒเป€เบฎเบฑเบ”เปƒเบซเป‰ "-Werror" เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. . เบเบฒเบ™เบฅเบงเบกเป€เบญเบปเบฒเบ—เบธเบ‡ โ€œ-Werrorโ€ เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบเบญเบšเปเบกเปˆเบ™เบ„เบงเบšเบ„เบธเบกเป‚เบ”เบเปƒเบŠเป‰เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต WERROR, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบ•เบฑเป‰เบ‡เป€เบ›เบฑเบ™ COMPILE_TEST เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, i.e. เบชเปเบฒเบฅเบฑเบšเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš.
  • Virtualization เปเบฅเบฐเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž
    • เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™ dm-ima เปƒเบซเบกเปˆเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™ Device Mapper (DM) เบ”เป‰เบงเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบปเบ™เป„เบเบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เบ—เบฒเบ‡เป„เบเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบฅเบฐเบšเบปเบšเบเปˆเบญเบ IMA (Integrity Measurement Architecture) เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เบžเบฒเบเบ™เบญเบเบเบงเบ”เบชเบญเบšเบชเบฐเบ–เบฒเบ™เบฐเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเปˆเบญเบ kernel เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™. . เปƒเบ™เบ—เบฒเบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”, dm-ima เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเปƒเบŠเป‰ Device Mapper เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบฅเบฐเบšเบปเบšเบŸเบฑเบ‡เบžเบฒเบเบ™เบญเบ, เปƒเบ™เบ™เบฑเป‰เบ™เบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบ DM เบ—เบตเปˆเป€เบ›เบตเบ”เบ•เบปเบงเบ–เบทเบเบเบงเบ”เบชเบญเบšเป‚เบ”เบเปƒเบŠเป‰ IMA.
    • prctl() เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบซเบกเปˆ PR_SPEC_L1D_FLUSH, เป€เบŠเบดเปˆเบ‡เป€เบกเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™, เป€เบฎเบฑเบ”เปƒเบซเป‰ kernel เบฅเป‰เบฒเบ‡เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡ cache เบฅเบฐเบ”เบฑเบšเบ—เปเบฒเบญเบดเบ” (L1D) เปเบ•เปˆเบฅเบฐเบ„เบฑเป‰เบ‡เบ—เบตเปˆเบชเบฐเบซเบผเบฑเบšเบชเบฐเบžเบฒเบšเบเบฒเบ™เป€เบเบตเบ”เบ‚เบถเป‰เบ™. เบฎเบนเบšเปเบšเบšเบ™เบตเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป€เบฅเบทเบญเบเบชเปเบฒเบฅเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบชเบธเบ”, เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ•เปเปˆเบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ—เบฒเบ‡เบ‚เป‰เบฒเบ‡เบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ•เบปเบเบฅเบปเบ‡เปƒเบ™ cache เป€เบ›เบฑเบ™เบœเบปเบ™เบกเบฒเบˆเบฒเบเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบ—เบตเปˆเป€เบเบตเบ”เบˆเบฒเบเบเบฒเบ™เบ„เบฒเบ”เป€เบ”เบปเบฒเบ‚เบญเบ‡เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเปƒเบ™ CPU. เบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเปƒเบ™เบเบฒเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰ PR_SPEC_L1D_FLUSH (เบšเปเปˆเป„เบ”เป‰เป€เบ›เบตเบ”เปƒเบŠเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™) เป€เบ›เบฑเบ™เบเบฒเบ™เบฅเบปเบ‡เป‚เบ—เบ”เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™.
    • เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡ kernel เบ”เป‰เบงเบเบเบฒเบ™เป€เบžเบตเปˆเบกเบ—เบธเบ‡ "-fzero-call-used-regs=used-gpr" เบเบฑเบš GCC, เป€เบŠเบดเปˆเบ‡เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบเบฒเบ™เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ–เบทเบเบ•เบฑเป‰เบ‡เปƒเบซเบกเปˆเป€เบ›เบฑเบ™เบชเบนเบ™เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบเบฑเบšเบ„เบทเบ™เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบˆเบฒเบเบŸเบฑเบ‡เบŠเบฑเบ™. เบ•เบปเบงเป€เบฅเบทเบญเบเบ™เบตเป‰เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เบฎเบปเปˆเบงเป„เบซเบฅเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบซเบ™เป‰เบฒเบ—เบตเปˆเปเบฅเบฐเบซเบผเบธเบ”เบฅเบปเบ‡ 20% เบ‚เบญเบ‡เบˆเปเบฒเบ™เบงเบ™เบšเบฅเบฑเบญเบเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ ROP (Return-Oriented Programming) gadgets เปƒเบ™เบเบฒเบ™เบ‚เบธเบ”เบ„เบปเป‰เบ™.
    • เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐ ARM64 เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบชเปเบฒเบฅเบฑเบš Hyper-V hypervisor เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”.
    • เบเบญเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เบปเบ™เบ‚เบฑเบšเปƒเบซเบกเปˆ "VDUSE" เบ–เบทเบเบชเบฐเป€เบซเบ™เบต, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบญเบธเบ›เบฐเบเบญเบ™ block virtual เปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เปเบฅเบฐเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ Virtio เป€เบ›เบฑเบ™เบเบฒเบ™เบ‚เบปเบ™เบชเบปเปˆเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบˆเบฒเบเบฅเบฐเบšเบปเบšเปเบ‚เบ.
    • เป„เบ”เป€เบงเบต Virtio เป€เบžเบตเปˆเบกเบชเปเบฒเบฅเบฑเบšเบฅเบปเบ”เป€เบก I2C, เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบˆเปเบฒเบฅเบญเบ‡เบ•เบปเบงเบ„เบงเบšเบ„เบธเบก I2C เปƒเบ™เป‚เบซเบกเบ” paravirtualization เป‚เบ”เบเปƒเบŠเป‰ backends เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.
    • เป€เบžเบตเปˆเบก Virtio driver gpio-virtio เป€เบžเบทเปˆเบญเปƒเบซเป‰เปเบ‚เบเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบชเบฒเบ GPIO เบ—เบตเปˆเบชเบฐเปœเบญเบ‡เปƒเบซเป‰เป‚เบ”เบเบฅเบฐเบšเบปเบšเป€เบˆเบปเป‰เบฒเบžเบฒเบš.
    • เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบˆเปเบฒเบเบฑเบ”เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบซเบ™เป‰เบฒเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบชเปเบฒเบฅเบฑเบšเป„เบ”เป€เบงเบตเบญเบธเบ›เบฐเบเบญเบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš DMA เปƒเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบšเปเปˆเบกเบต I/O MMU (เบซเบ™เปˆเบงเบเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ).
    • KVM hypervisor เบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบชเบฐเบ–เบดเบ•เบดเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ histograms linear เปเบฅเบฐ logarithmic.
  • เบฅเบฐเบšเบปเบšเบเปˆเบญเบเป€เบ„เบทเบญเบ‚เปˆเบฒเบ
    • เป‚เบกเบ”เบนเบ™ ksmbd เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆ kernel เบ”เป‰เบงเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เป„เบŸเบฅเปŒเป‚เบ”เบเปƒเบŠเป‰เป‚เบ›เป‚เบ•เบ„เบญเบ™ SMB3. เป‚เบกเบ”เบนเบ™เป€เบชเบตเบกเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบนเบเบ„เป‰เบฒ SMB เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™ kernel เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เปเบฅเบฐ, เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ SMB เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰, เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบเบ‚เบถเป‰เบ™เปƒเบ™เบ”เป‰เบฒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”, เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบšเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡ kernel เบ‚เบฑเป‰เบ™เบชเบนเบ‡. Ksmbd เบ–เบทเบเบเบปเบเบ‚เบถเป‰เบ™เบกเบฒเป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบ Samba เบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ•เบดเบžเบฒเบšเบชเบนเบ‡ เปเบฅเบฐเบžเป‰เบญเบกเบเบฑเบ‡เบ—เบตเปˆเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบกเบท Samba เปเบฅเบฐเบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™. เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡ ksmbd เบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบเบฒเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป„เบŸเบฅเปŒเบ—เบตเปˆเปเบˆเบเบขเบฒเบ (เบเบฒเบ™เป€เบŠเบปเปˆเบฒ SMB) เปƒเบ™เบฅเบฐเบšเบปเบšเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เบซเบผเบธเบ”เบœเปˆเบญเบ™เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ. เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”, เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš RDMA (โ€œsmbdirectโ€) เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเป‚เบ›เป‚เบ•เบ„เบญเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญเบ–เบทเบ‚เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เป‚เบ”เบเปƒเบŠเป‰เบฅเบฒเบเป€เบŠเบฑเบ™เบ”เบดเบˆเบดเบ•เบญเบ™.
    • เบฅเบนเบเบ„เป‰เบฒ CIFS เบšเปเปˆเบฎเบญเบ‡เบฎเบฑเบš NTLM เบญเบตเบเบ•เปเปˆเป„เบ› เปเบฅเบฐเบฅเบฐเบšเบปเบšเบเบฒเบ™เบžเบดเบชเบนเบ”เบขเบทเบ™เบขเบฑเบ™เบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆ DES เบ—เบตเปˆเบญเปˆเบญเบ™เบเบงเปˆเบฒเบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เป‚เบ›เบฃเป‚เบ•เบ„เป SMB1.
    • เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ Multicast เปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบปเบงเป€เบ„เบทเบญเบ‚เปˆเบฒเบเบชเปเบฒเบฅเบฑเบš vlans.
    • เป„เบ”เบฃเป€เบงเบตเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ, เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบฅเบงเบกเบญเบดเบ™เป€เบ•เบตเป€เบŸเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบ, เป„เบ”เป‰เบ–เบทเบเบญเบฑเบšเป€เบ”เบ”เป€เบžเบทเปˆเบญเบฎเบญเบ‡เบฎเบฑเบšเบฅเบฐเบšเบปเบšเบเปˆเบญเบ XDP (eXpress Data Path), เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบกเบตเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเปเบžเบฑเบเป€เบเบฑเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป‚เบ”เบ kernel network stack. Linux.
    • stack เป„เบฎเป‰เบชเบฒเบ mac80211 เบฎเบญเบ‡เบฎเบฑเบš 6GHZ STA (เบเบฒเบ™เบญเบฐเบ™เบธเบเบฒเบ”เบŠเบปเปˆเบงเบ„เบฒเบงเบžเบดเป€เบชเบ”) เปƒเบ™เป‚เบซเบกเบ” LPI, SP เปเบฅเบฐ VLP, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ” TWT (เป€เบงเบฅเบฒเบ›เบธเบเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบ) เบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เปƒเบ™เป‚เบซเบกเบ”เบˆเบธเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš MCTP (Management Component Transport Protocol), เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฅเบฐเบซเบงเปˆเบฒเบ‡เบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เปเบฅเบฐเบญเบธเบ›เบฐเบเบญเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡ (เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเป‚เบฎเบ”, เบญเบธเบ›เบฐเบเบญเบ™เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡, เปเบฅเบฐเบญเบทเปˆเบ™เป†).
    • เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบซเบผเบฑเบเบ‚เบญเบ‡ MPTCP (MultiPath TCP), เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡เป‚เบ›เป‚เบ•เบ„เบญเบ™ TCP เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ TCP เบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เปเบžเบฑเบเป€เบเบฑเบ”เบžเป‰เบญเบกเป†เบเบฑเบ™เบ•เบฒเบกเบซเบผเบฒเบเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบ—เบตเปˆเบขเบนเปˆ IP เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบฅเบธเป‰เบ™ เปƒเปเปˆ เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบšเบ—เบตเปˆเบขเบนเปˆเปƒเบ™เป‚เบซเบกเบ” fullmesh.
    • เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ—เบตเปˆเบซเบธเป‰เบกเบขเบนเปˆเปƒเบ™เป‚เบ›เบฃเป‚เบ•เบ„เป SRv6 (Segment Routing IPv6) เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆ netfilter เปเบฅเป‰เบง.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš sockmap เบชเปเบฒเบฅเบฑเบšเป€เบ•เบปเป‰เบฒเบฎเบฑเบšเบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ” Unix.
  • เบญเบธเบ›เบฐเบเบญเบ™
    • เป„เบ”เป€เบงเบต amdgpu เบฎเบญเบ‡เบฎเบฑเบš Cyan Skillfish APUs (เบกเบต Navi 1x GPUs). Yellow Carp APU เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ codecs เบงเบดเบ”เบตเป‚เบญ. เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš GPU Aldebaran. เป€เบžเบตเปˆเบกเบ•เบปเบงเบฅเบฐเบšเบธเปเบœเบ™เบ—เบตเปˆเปƒเปเปˆเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ GPU Navi 24 โ€œBeige Gobyโ€ เปเบฅเบฐ RDNA2. เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบˆเป virtual (VKMS) เปเบกเปˆเบ™เบชเบฐเป€เบซเบ™เบต. เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบญเบธเบ™เบซเบฐเบžเบนเบกเบ‚เบญเบ‡เบŠเบดเบš AMD Zen 3 เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”.
    • เป„เบ”เป€เบงเบต amdkfd (เบชเปเบฒเบฅเบฑเบš GPU เบ—เบตเปˆเบšเปเปˆเบŠเป‰เปเบฒเบเบฑเบ™, เป€เบŠเบฑเปˆเบ™ Polaris) เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ virtual เบ—เบตเปˆเปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบ™ (SVM, เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ virtual เบ—เบตเปˆเปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบ™) เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบฅเบฐเบšเบปเบšเบเปˆเบญเบ HMM (Heterogeneous memory management) เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ™เปเบฒเปƒเบŠเป‰เบญเบธเบ›เบฐเบเบญเบ™เบ—เบตเปˆเบกเบตเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡ (MMU. , เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™), เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ•เบปเป‰เบ™เบ•เป. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ HMM, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบ—เบตเปˆเบขเบนเปˆเบฎเปˆเบงเบกเบเบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ GPU เปเบฅเบฐ CPU, เป€เบŠเบดเปˆเบ‡ GPU เบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ•เบปเป‰เบ™เบ•เปเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™.
    • เป„เบ”เป€เบงเบต i915 เบชเปเบฒเบฅเบฑเบšเบšเบฑเบ”เบงเบตเบ”เบตเป‚เบญ Intel เบ‚เบฐเบซเบเบฒเบเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบงเบดเบ”เบตเป‚เบญ TTM เปเบฅเบฐเบ›เบฐเบเบญเบšเบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบเบฒเบ™เปƒเบŠเป‰เบžเบฐเบฅเบฑเบ‡เบ‡เบฒเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ GuC (Graphics micro Controller). เบเบฒเบ™เบเบฐเบเบฝเบกเป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบšเบฑเบ”เบเบฒเบŸเบดเบ Intel ARC Alchemist เปเบฅเบฐ Intel Xe-HP GPU.
    • เป„เบ”เป€เบงเบต nouveau เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบงเบšเบ„เบธเบก backlight เบชเปเบฒเบฅเบฑเบšเปเบœเบ‡ eDP เป‚เบ”เบเปƒเบŠเป‰ DPCD (DisplayPort Configuration Data).
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš Adreno 7c Gen 3 เปเบฅเบฐ Adreno 680 GPUs เบเบฑเบšเป„เบ”เป€เบงเบต msm.
    • เป„เบ”เป€เบงเบต IOMMU เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบŠเบดเบš Apple M1.
    • เป€เบžเบตเปˆเบกเป„เบ”เป€เบงเบตเบชเบฝเบ‡เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆ AMD Van Gogh APUs.
    • เป„เบ”เป€เบงเบต Realtek R8188EU เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบชเบฒเบ‚เบฒเบ‚เบฑเป‰เบ™เบ•เบญเบ™, เป€เบŠเบดเปˆเบ‡เบ›เปˆเบฝเบ™เปเบ—เบ™เป„เบ”เป€เบงเบตเป€เบงเบตเบŠเบฑเปˆเบ™เป€เบเบปเปˆเบฒ (rtl8188eu) เบชเปเบฒเบฅเบฑเบšเบŠเบดเบšเป„เบฎเป‰เบชเบฒเบ Realtek RTL8188EU 802.11 b/g/n.
    • เป„เบ”เบฃเป€เบงเบต ocp_pt เป„เบ”เป‰เบ–เบทเบเบฎเบฑเบšเบฎเบญเบ‡เป€เบญเบปเบฒเบชเบณเบฅเบฑเบšเบเบฐเบ”เบฒเบ™ PCIe เบ—เบตเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบ Meta (Facebook) เบ”เป‰เบงเบเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบกเบ‡เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเบ‚เบฐเปœเบฒเบ”เบ™เป‰เบญเบ เปเบฅเบฐ เป€เบ„เบทเปˆเบญเบ‡เบฎเบฑเบš GNSS เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ เบเบฒเบ™เบ›เบฐเบชเบฒเบ™เบชเบฝเบ‡เบ‚เบญเบ‡เป€เบงเบฅเบฒเบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš Sony Xperia 10II (Snapdragon 665), Xiaomi Redmi 2 (Snapdragon MSM8916), Samsung Galaxy S3 (Snapdragon MSM8226), เป‚เบ—เบฅเบฐเบชเบฑเบšเบชเบฐเบซเบผเบฒเบ” Samsung Gavini / Codina / Kyle.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบš ARM Soะก เปเบฅเบฐ NVIDIA Jetson TX2 NX Developer Kit, Sancloud BBE Lite, PicoITX, DRC02, SolidRun SolidSense, SKOV i.MX6, Nitrogen8, Traverse Ten64, GW7902, Microchip SAMA7, ualcomm Snapdragon SDM636/SMas8150 เบเบฐเบ”เบฒเบ™ -3G/M2e-3G, Marvell CN2x, ASpeed โ€‹โ€‹AST913 (เบเบฐเบ”เบฒเบ™เป€เบŠเบตเบšเป€เบงเบต Facebook Cloudripper, Elbert เปเบฅเบฐ Fuji), 2600KOpen STiH4-b418.
    • เป€เบžเบตเปˆเบกเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบšเบชเบณเบฅเบฑเบšเปเบœเบ‡เบˆเป LCD Gopher 2b, EDT ETM0350G0DH6/ETMV570G2DHU, LOGIC Technologies LTTD800480070-L6WH-RT, Multi-Innotechnology MI1010AIT-1CP1, Innolux EJ030k3.0 , Samsung ATNA9341XC3300 , Samsung DB33, WideChips WS20.
    • เป€เบžเบตเปˆเบกเป„เบ”เป€เบงเบต LiteETH เบ”เป‰เบงเบเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบšเบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเบญเบตเป€เบ—เบตเป€เบ™เบฑเบ”เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบŠเบญเบšเปเบง LiteX SoCs (เบชเบณเบฅเบฑเบš FPGAs).
    • เบ•เบปเบงเป€เบฅเบทเบญเบเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡เป€เบงเบฅเบฒเบ•เปเปˆเบฒเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆเป„เบ”เป€เบงเบต usb-audio เป€เบžเบทเปˆเบญเบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เบฅเบงเบกเป€เบญเบปเบฒเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เป‚เปเบ”เบเบฒเบ™เบ•เบญเบšเบชเบฐเปœเบญเบ‡เบ•เปเปˆเบฒเบชเบธเบ”. เบเบฑเบ‡เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ—เบฒเบ‡เป€เบฅเบทเบญเบ quirk_flags เป€เบžเบทเปˆเบญเบœเปˆเบฒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบญเบธเบ›เบฐเบเบญเบ™เบชเบฐเป€เบžเบฒเบฐ.

เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบกเบนเบ™เบ™เบดเบ—เบดเบŠเบญเบšเปเบงเป€เบชเบฅเบตเบฅเบฒเบ•เบดเบ™เบญเบฒเป€เบกเบฅเบดเบเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เบฅเบธเป‰เบ™เบ‚เบญเบ‡ kernel เบŸเบฃเบตเบ—เบฑเบ‡เปเบปเบ” 5.15 - Linux-libre 5.15-gnu, เป„เบ”เป‰เบฅเบถเบšเบฅเป‰เบฒเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเป€เบŸเบตเบกเปเบง เปเบฅเบฐ เป„เบ”เบฃเป€เบงเบตเบ—เบตเปˆเบกเบตเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบญเบดเบ”เบชเบฐเบซเบผเบฐ เบซเบผเบท เบชเปˆเบงเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบกเบตเบ‚เบญเบšเป€เบ‚เบ”เบˆเบณเบเบฑเบ”. เบฅเบธเป‰เบ™เปƒเปเปˆเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบšเบฑเบ™เบ—เบถเบเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบ„เบงเบฒเบกเบชเบฐเบญเบฒเบ”. เบšเบฑเบ™เบซเบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบซเบธเป‰เบกเบซเปเปˆ mkspec เป„เบ”เป‰เบ–เบทเบเปเบเป‰เป„เบ‚เปเบฅเป‰เบง, เปเบฅเบฐ เบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบšเปเบžเบฑเบเป€เบเบ” snap เป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡. เบ„เบณเป€เบ•เบทเบญเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เป€เบกเบทเปˆเบญเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป„เบŸเบฅเปŒเบซเบปเบงเบ‚เปเป‰ firmware.h เป„เบ”เป‰เบ–เบทเบเบฅเบถเบšเบญเบญเบ. เบ„เบณเป€เบ•เบทเบญเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡ (format-extra-args, เบ„เบณเป€เบซเบฑเบ™, เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰, เปเบฅเบฐ เบ•เบปเบงเปเบ›) เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เป„เบ”เป‰เบฎเบฑเบšเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบชเบฐเปเบ”เบ‡เป€เบกเบทเปˆเบญเบชเป‰เบฒเบ‡เปƒเบ™เป‚เปเบ” -Werror. เป€เบžเบตเปˆเบกเบเบฒเบ™เป€เบฎเบฑเบ”เบ„เบงเบฒเบกเบชเบฐเบญเบฒเบ”เป„เบ”เบฃเป€เบงเบต gehc-achc. เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบญเบฑเบšเป€เบ”เบ”เบชเบณเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบ„เบงเบฒเบกเบชเบฐเบญเบฒเบ” blobs เปƒเบ™เป„เบ”เบฃเป€เบงเบต เปเบฅเบฐ เบฅเบฐเบšเบปเบšเบเปˆเบญเบ adreno, btusb, btintel, brcmfmac, aarch64, เปเบฅเบฐ qcom. เบเบฒเบ™เป€เบฎเบฑเบ”เบ„เบงเบฒเบกเบชเบฐเบญเบฒเบ”เป„เบ”เบฃเป€เบงเบต prism54 (เบ–เบทเบเบฅเบถเบšเบญเบญเบ) เปเบฅเบฐ rtl8188eu (เบ›เปˆเบฝเบ™เปเบ—เบ™เบ”เป‰เบงเบ r8188eu) เป„เบ”เป‰เบ–เบทเบเบขเบธเบ”เป€เบŠเบปเบฒ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เบŠเบทเป‰เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ DDoS, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ VPS VDS ๐Ÿ”ฅ เบŠเบทเป‰เป€เบงเบฑเบšเป„เบŠเบ—เปŒเป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบ”เป‰เบงเบเบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™ DDoS, เป€เบŠเบตเบšเป€เบงเบต VPS VDS | ProHoster