Ukukhishwa kwe-kernel ye-Linux 5.18

ПослС Π΄Π²ΡƒΡ… мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Линус Π’ΠΎΡ€Π²Π°Π»ΡŒΠ΄Ρ прСдставил Ρ€Π΅Π»ΠΈΠ· ядра Linux 5.18. Π‘Ρ€Π΅Π΄ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ: ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° большая чистка ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, объявлСна ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅ΠΉ Π€Π‘ Reiserfs, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ события трассировки ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… процСссов, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° блокирования Ρ€Π°Π±ΠΎΡ‚Ρ‹ эксплоитов Intel IBT, Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Ρ€Π΅ΠΆΠΈΠΌ выявлСния пСрСполнСния Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΏΡ€ΠΈ использовании Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ memcpy(), Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ отслСТивания Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ fprobe, ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° Π·Π°Π΄Π°Ρ‡ Π½Π° CPU AMD Zen, Π² состав Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для управлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ CPU Intel (SDS), ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π° Ρ‡Π°ΡΡ‚ΡŒ ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ для рСструктуризации Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ стандарта C11.

Π’ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ принято 16206 исправлСний ΠΎΡ‚ 2127 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² (Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ выпускС Π±Ρ‹Π»ΠΎ 14203 исправлСния ΠΎΡ‚ 1995 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²), Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΠ°Ρ‚Ρ‡Π° β€” 108 ΠœΠ‘ (измСнСния Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΠ»ΠΈ 14235 Ρ„Π°ΠΉΠ»ΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 1340982 строк ΠΊΠΎΠ΄Π°, ΡƒΠ΄Π°Π»Π΅Π½ΠΎ 593836 строк). Около 44% всСх прСдставлСнных Π² 5.18 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ связаны с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ устройств, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ 16% ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ обновлСнию ΠΊΠΎΠ΄Π°, спСцифичного для Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€, 11% связано с сСтСвым стСком, 3% β€” с Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌΠΈ систСмами ΠΈ 3% c Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ подсистСмами ядра.

Ukuqamba okusha okubalulekile ku-kernel 5.18:

  • I-Disk Subsystem, I/O kanye ne-File Systems
    • Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС Btrfs Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° проброса сТатых Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ send ΠΈ receive. Π Π°Π½Π΅Π΅ ΠΏΡ€ΠΈ использовании send/receive ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ сторона распаковывала Π΄Π°Π½Π½Ρ‹Π΅, Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ Π² сТатом Π²ΠΈΠ΄Π΅, Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π°Ρ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ сТимала ΠΏΠ΅Ρ€Π΅Π΄ записью. Π’ ядрС 5.18 прилоТСниям Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌ Π²Ρ‹Π·ΠΎΠ²Ρ‹ send/receive, прСдоставлСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ сТатых Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· ΠΏΠ΅Ρ€Π΅ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° благодаря Π½ΠΎΠ²Ρ‹ΠΌ ioctl-опСрациям BTRFS_IOC_ENCODED_READ ΠΈ BTRFS_IOC_ENCODED_WRITE, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΌ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² экстСнты.

      ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² Btrfs ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ fsync. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄Π΅Π΄ΡƒΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ выполнСния reflink (ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π° с созданиСм ссылки Π½Π° ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π΄Π°Π½Π½Ρ‹Π΅ Π±Π΅Π· ΠΈΡ… фактичСского копирования) для всСго Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡΡΡŒ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ монтирования.

    • Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ прямого Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° (Direct I/O) обСспСчСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ доступа ΠΊ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΏΡ€ΠΈ использовании Π² fscrypt inline-ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ силами ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° накопитСля, Π° Π½Π΅ ядра. ΠŸΡ€ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠΈ силами ядра доступ ΠΊ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Direct I/O ΠΊΠ°ΠΊ ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ осущСствляСтся минуя ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ядрС.
    • Π’ NFS-сСрвСрС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° NFSv3, которая Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ доступна ΠΏΡ€ΠΈ ΠΎΠ±Ρ‰Π΅ΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ NFS. NFSv3 рассматриваСтся ΠΊΠ°ΠΊ основная ΠΈ всСгда поддСрТиваСмая вСрсия NFS, Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° NFSv2 Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π°. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ чтСния содСрТимого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ².
    • Ѐайловая систСма ReiserFS ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π° Π² разряд ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ удалСния Π² 2025 Π³ΠΎΠ΄Ρƒ. ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ReiserFS Π² разряд ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° сопровоТдСниС ΠΎΠ±Ρ‰ΠΈΡ… для Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, связанных с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π½ΠΎΠ²ΠΎΠ³ΠΎ API для монтирования, iomap ΠΈ Ρ„ΠΎΠ»ΠΈΠ°Π½Ρ‚ΠΎΠ².
    • Для Π€Π‘ F2FS Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΈΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм, примСняСмого для сопоставлСния Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° ΠΏΡ€ΠΈΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Ρ‡ΡƒΠΆΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ с Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ систСмС.
    • ΠŸΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΊΠΎΠ΄ для подсчёта статистики Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Ρ… Device-mapper, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΈΠ½Π³Π° Π² Ρ‚Π°ΠΊΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Ρ…, ΠΊΠ°ΠΊ dm-crypt.
    • Для устройств NVMe Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° 64-разрядных ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… сумм для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ цСлостности.
    • Для Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы exfat ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° новая опция монтирования Β«keep_last_dotsΒ», Π·Π°ΠΏΡ€Π΅Ρ‰Π°ΡŽΡ‰Π°Ρ очистку Ρ‚ΠΎΡ‡Π΅ΠΊ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π° (Π² Windows Ρ‚ΠΎΡ‡ΠΊΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ).
    • Π’ EXT4 ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌΠ° fast_commit ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π° ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ. ΠžΠΏΡ†ΠΈΡ монтирования Β«mb_optimize_scanΒ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² условиях большой Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π€Π‘, Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ с экстСнтами.
    • ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² записи (write stream) Π² подсистСмС, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π±Π»ΠΎΡ‡Π½Ρ‹Ρ… устройств. Указанная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° для SSD, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° распространСния ΠΈ сСйчас Π² ΠΎΠ±ΠΈΡ…ΠΎΠ΄Π΅ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ устройства с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΈ маловСроятно, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ появятся Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.
  • Imemori kanye nezinsizakalo zesistimu
    • ΠΠ°Ρ‡Π°Π»Π°ΡΡŒ интСграция Π½Π°Π±ΠΎΡ€Π° ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя пСрСсборки ядра Π·Π° счёт рСструктуризации ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ сокращСния числа пСрСкрёстных зависимостСй. Π’ состав ядра 5.18 Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΠΏΠ°Ρ‚Ρ‡ΠΈ, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ структуру Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° Π·Π°Π΄Π°Ρ‡ (kernel/sched). По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΌ выпуском ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ процСссорного Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈ сборкС ΠΊΠΎΠ΄Π° kernel/sched/ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΠ»ΠΎΡΡŒ Π½Π° 61%, Π° фактичСскоС врСмя ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΠ»ΠΎΡΡŒ Π½Π° 3.9% (с 2.95 Π΄ΠΎ 2.84 сСк).
    • Π’ ΠΊΠΎΠ΄Π΅ ядра Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ использованиС стандарта C11, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π² 2011 Π³ΠΎΠ΄Ρƒ. Π Π°Π½Π΅Π΅ добавляСмый Π² ядро ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ спСцификации ANSI C (Π‘89), сформированной Π΅Ρ‰Ρ‘ Π² 1989 Π³ΠΎΠ΄Ρƒ. Π’ сборочных скриптах ядра 5.18 опция β€˜β€”std=gnu89’ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° β€˜β€”std=gnu11 -Wno-shift-negative-value’. Π Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π»Π°ΡΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования стандарта C17, Π½ΠΎ Π² этом случаС ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π±Ρ‹ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ‚ΡŒ минимально ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ GCC, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ C11 укладываСтся Π² Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ трСбования ΠΊ вСрсии GCC (5.1).
    • ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ планирования Π·Π°Π΄Π°Ρ‡ Π½Π° процСссорах AMD с ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ Zen, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡƒΠ·Π»Π° с Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠ°Π½Π°Π»Π°ΠΌΠΈ памяти прСдоставляСтся нСсколько кэшСй послСднСго уровня (LLC, Last Level Cache). Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии устранён дисбаланс LLC ΠΌΠ΅ΠΆΠ΄Ρƒ ΡƒΠ·Π»Π°ΠΌΠΈ NUMA, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²ΠΈΠ΄Π°Ρ… Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ сущСствСнному ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
    • Π Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ срСдства для трассировки ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии ядра Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ процСссами событий трассировки (User events) ΠΈ записи Π΄Π°Π½Π½Ρ‹Ρ… Π² Π±ΡƒΡ„Π΅Ρ€ трассировки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ просмотрСны Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ трассировки ядра, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ftrace ΠΈ perf. Бобытия трассировки ΠΈΠ· пространства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ ΠΎΡ‚ событий трассировки ядра. БостояниС событий ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ просмотрСно Ρ‡Π΅Ρ€Π΅Π· Ρ„Π°ΠΉΠ» /sys/kernel/debug/tracing/user_events_status, Π° рСгистрация события ΠΈ запись Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· Ρ„Π°ΠΉΠ» /sys/kernel/debug/tracing/user_events_data.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ отслСТивания (probe) Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ β€” fprobe. API fprobe основан Π½Π° ftrace, Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ прикрСплСния callback-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΊ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌ Π²Ρ…ΠΎΠ΄Π° Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ kprobes ΠΈ kretprobes, Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ сразу для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.
    • ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° старых процСссоров ARM (ARMv4 ΠΈ ARMv5), Π½Π΅ оснащённых Π±Π»ΠΎΠΊΠΎΠΌ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ (MMU). ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° систСм ARMv7-M Π±Π΅Π· MMU сохранСна.
    • ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° RISC-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ NDS32, использовавшСйся Π² процСссорах ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Andes Technologies. Код ΡƒΠ΄Π°Π»Ρ‘Π½ ΠΈΠ·-Π·Π° отсутствия сопровоТдСния ΠΈ нСвострСбованности ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ NDS32 Π² основном ядрС Linux (ΠΎΡΡ‚Π°Π²ΡˆΠΈΠ΅ΡΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ спСциализированныС сборки ядра ΠΎΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ оборудования).
    • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π° сборка ядра с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ² a.out для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ alpha ΠΈ m68k, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ. ВСроятно, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅Π³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° a.out Π² скором Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠ΄Π°Π»Π΅Π½Π° ΠΈΠ· ядра. ΠŸΠ»Π°Π½Ρ‹ ΠΏΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° a.out ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ с 2019 Π³ΠΎΠ΄Π°.
    • Для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ PA-RISC Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° минимальная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° vDSO (virtual dynamic shared objects), ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ², доступный Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π±Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ контСкста. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° vDSO ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запуска с нСисполняСмым стСком.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Intel HFI (Hardware Feedback Interface), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ядру свСдСния ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ энСргоэффСктивности ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ CPU.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Intel SDSi (Software-Defined Silicon), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй Π² процСссорС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, спСциализированныС инструкции ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ кэш-ΠΏΠ°ΠΌΡΡ‚ΡŒ). ИдСя Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠΉ Ρ†Π΅Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ Ρ‡ΠΈΠΏΡ‹ с Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΌΠΈ функциями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Β«Π΄ΠΎΠΊΡƒΠΏΠΈΡ‚ΡŒΒ» ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности Π±Π΅Π· Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ Π·Π°ΠΌΠ΅Π½Ρ‹ Ρ‡ΠΈΠΏΠ°.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ amd_hsmp для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ интСрфСйса AMD HSMP (Host System Management Port), ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ доступ ΠΊ функциям управлСния процСссором Ρ‡Π΅Ρ€Π΅Π· Π½Π°Π±ΠΎΡ€ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… рСгистров, ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠΈΡ…ΡΡ Π² сСрвСрных процСссорах AMD EPYC начиная с поколСния Fam19h. НапримСр, Ρ‡Π΅Ρ€Π΅Π· HSMP ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ± энСргопотрСблСнии ΠΈ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π΅, Π²Ρ‹ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ограничСния Π½Π° частоту, Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ€Π΅ΠΆΠΈΠΌΡ‹ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ памяти.
    • Π’ интСрфСйсС асинхронного Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° io_uring Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция IORING_SETUP_SUBMIT_ALL для рСгистрации Π² ΠΊΠΎΠ»ΡŒΡ†Π΅Π²ΠΎΠΌ Π±ΡƒΡ„Π΅Ρ€Π΅ Π½Π°Π±ΠΎΡ€Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… дСскрипторов, Π° Ρ‚Π°ΠΊΠΆΠ΅ опСрация IORING_OP_MSG_RING, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ сигнал ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΡŒΡ†Π΅Π²ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΠ»ΡŒΡ†Π΅Π²ΠΎΠΉ Π±ΡƒΡ„Π΅Ρ€.
    • Π’ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ DAMOS (Data Access Monitoring-based Operation Schemes), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΌ Π²Ρ‹ΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ частоты обращСния ΠΊ памяти, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ возмоТности ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŽ Π·Π° опСрациями с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈΠ· пространства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
    • Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΡ сСрия ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Ρ„ΠΎΠ»ΠΈΠ°Π½Ρ‚ΠΎΠ² страниц памяти (page folios), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Ρ‘Π½Π½Ρ‹Π΅ страницы памяти (compound pages), Π½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΠΎΠΉ сСмантикой ΠΈ Π±ΠΎΠ»Π΅Π΅ понятной ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹. ИспользованиС Ρ„ΠΎΠ»ΠΈΠ°Π½Ρ‚ΠΎΠ² позволяСт ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… подсистСмах ядра. Π’ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΏΠ°Ρ‚Ρ‡Π°Ρ… осущСствлён ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π½Π° Ρ„ΠΎΠ»ΠΈΠ°Π½Ρ‚Ρ‹ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ разновидности Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ get_user_pages(). ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° создания Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ„ΠΎΠ»ΠΈΠ°Π½Ρ‚ΠΎΠ² Π² ΠΊΠΎΠ΄Π΅ ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰Π΅Π³ΠΎ чтСния Π΄Π°Π½Π½Ρ‹Ρ….
    • Π’ сборочной систСмС появилась ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния USERCFLAGS ΠΈ USERLDFLAGS, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π»Π°Π³ΠΈ компилятору ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΡƒ.
    • Π’ подсистСмС eBPF Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ BTF (BPF Type Format), ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΈΠΏΠΎΠ² Π² псСвдокодС BPF, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ добавлСния Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ, ΡΡΡ‹Π»Π°ΡŽΡ‰ΠΈΠΌΡΡ Π½Π° области памяти Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Аннотации ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ систСмС Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ BPF-ΠΊΠΎΠ΄Π° Π±ΠΎΠ»Π΅Π΅ качСствСнно Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ обращСния ΠΊ памяти.
    • ΠŸΡ€Π΅Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ выдСлСния памяти для хранСния Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… BPF-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π±ΠΎΠ»Π΅Π΅ эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π² ситуациях Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ большого числа BPF-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.
    • Π’ систСмный Π²Ρ‹Π·ΠΎΠ² madvise(), ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ срСдства для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ процСсса, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„Π»Π°Π³ MADV_DONTNEED_LOCKED, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ дополняСт ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉΡΡ Ρ„Π»Π°Π³ MADV_DONTNEED, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ядру ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Ρ€Π°Π½Π΅Π΅ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΎ готовящСмся освобоТдСнии Π±Π»ΠΎΠΊΠ° памяти, Ρ‚.Π΅. ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ этот Π±Π»ΠΎΠΊ ΡƒΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ΅Π½ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ядром. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ MADV_DONTNEED использованиС Ρ„Π»Π°Π³Π° MADV_DONTNEED_LOCKED допустимо для Π·Π°ΠΊΡ€Π΅ΠΏΠ»Ρ‘Π½Π½Ρ‹Ρ… Π² ΠžΠ—Π£ страниц памяти, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ madvise Π²Ρ‹Ρ‚Π΅ΡΠ½ΡΡŽΡ‚ΡΡ Π±Π΅Π· смСны своСго Π·Π°ΠΊΡ€Π΅ΠΏΠ»Ρ‘Π½Π½ΠΎΠ³ΠΎ статуса ΠΈ Π² случаС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ обращСния ΠΊ Π±Π»ΠΎΠΊΡƒ ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Β«page faultΒ» Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ с сохранСниСм привязки. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π»Π°Π³ MADV_DONTNEED с большими страницами памяти Π² HugeTLB.
  • I-Virtualization kanye Nokuphepha
    • Для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ x86 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΏΠΎΡ‚ΠΎΠΊΠ° выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ Intel IBT (Indirect Branch Tracking), ΠΌΠ΅ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ Ρ‚Π΅Ρ…Π½ΠΈΠΊ построСния эксплоитов с использованиСм ΠΏΡ€ΠΈΡ‘ΠΌΠΎΠ² Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования (ROP, Return-Oriented Programming), ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… эксплоит формируСтся Π² Ρ„ΠΎΡ€ΠΌΠ΅ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ Π² памяти кусков ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… инструкций, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΡ…ΡΡ инструкциСй Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° управлСния (ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, это окончания Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ). Π‘ΡƒΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π² Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ косвСнных ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² Π² Ρ‚Π΅Π»ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π½Π°Ρ‡Π°Π»Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ инструкции ENDBR ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ выполнСния ΠΏΠΎ косвСнному ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² случаС ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° эту ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ (косвСнный Π²Ρ‹Π·ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· JMP ΠΈ CALL Π΄ΠΎΠ»ΠΆΠ΅Π½ всСгда ΠΏΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ Π½Π° ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ ENDBR, которая Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π° Π² самом Π½Π°Ρ‡Π°Π»Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ).
    • Π’ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π±ΠΎΠ»Π΅Π΅ строгая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π³Ρ€Π°Π½ΠΈΡ† Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² Π² функциях memcpy(), memmove() ΠΈ memset(), выполняСмая Π½Π° этапС компиляции ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ€Π΅ΠΆΠΈΠΌΠ° CONFIG_FORTIFY_SOURCE. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ сводится ΠΊ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄Π° Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ элСмСнтов структур, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… извСстСн. ΠžΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ рСализованная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π±Ρ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС связанныС с memcpy() пСрСполнСния Π±ΡƒΡ„Π΅Ρ€Π° Π² ядрС, выявлСнныС ΠΏΠΎ мСньшСй ΠΌΠ΅Ρ€Π΅ Π·Π° послСдниС Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π°.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° вторая Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° псСвдослучайных чисСл RDRAND, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π·Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ устройств /dev/random ΠΈ /dev/urandom. Новая рСализация ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Π° ΡƒΠ½ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ /dev/random ΠΈ /dev/urandom, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ появлСния Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² Π² ΠΏΠΎΡ‚ΠΎΠΊΠ΅ случайных чисСл ΠΏΡ€ΠΈ запускС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ Π½Π° использованиС Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ BLAKE2s вмСсто SHA1 для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ смСшивания энтропии. ИзмСнСниС ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° псСвдослучайных чисСл, благодаря избавлСнию ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° SHA1 ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ пСрСзаписи Π²Π΅ΠΊΡ‚ΠΎΡ€Π° ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ RNG. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ BLAKE2s ΠΎΠΏΠ΅Ρ€Π΅ΠΆΠ°Π΅Ρ‚ SHA1 ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‚ΠΎ Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Ρ€Π°Π·ΠΈΠ»ΠΎΡΡŒ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
    • Для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ARM64 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ β€” Β«QARMA3Β», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ быстрСС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° QARMA ΠΏΡ€ΠΈ сохранСнии Π΄ΠΎΠ»ΠΆΠ½ΠΎΠ³ΠΎ уровня Π·Π°Ρ‰ΠΈΡ‚Ρ‹. ВСхнология позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спСциализированныС инструкции ARM64 для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ адрСсов Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хранятся Π² Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π²Π΅Ρ€Ρ…Π½ΠΈΡ… Π±ΠΈΡ‚Π°Ρ… самого указатСля.
    • Для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ARM64 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сборки с Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π² GCC 12 Ρ€Π΅ΠΆΠΈΠΌΠ° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ пСрСзаписи адрСса Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² случаС пСрСполнСния Π±ΡƒΡ„Π΅Ρ€Π° Π² стСкС. Π‘ΡƒΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π² сохранСнии послС ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ управлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ адрСса Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Β«Ρ‚Π΅Π½Π΅Π²ΠΎΠΌΒ» стСкС ΠΈ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ адрСса ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π½ΠΎΠ²ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ (keyring) β€” Β«machineΒ», содСрТащСС ΠΊΠ»ΡŽΡ‡ΠΈ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° систСмы (MOK, Machine Owner Keys), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ Π² shim-Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ΅. Π£ΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для завСрСния Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписью ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ядра, Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… Π½Π° стадии послС Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ядра).
    • Π£Π΄Π°Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° асиммСтричных Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ для TPM, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ Π² ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠ΅ΠΉ вСрсии TPM, ΠΈΠΌΠ΅ΡŽΡ‚ извСстныС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ распространСниС Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π° Π΄Π°Π½Π½Ρ‹Ρ… с Ρ‚ΠΈΠΏΠΎΠΌ size_t ΠΎΡ‚ цСлочислСнных ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ. Π’ ΠΊΠΎΠ΄Π΅ задСйствованы ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ size_mul(), size_add() ΠΈ size_sub(), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ бСзопасно ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, слоТСниС ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² с Ρ‚ΠΈΠΏΠΎΠΌ size_t.
    • ΠŸΡ€ΠΈ сборкС ядра Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ„Π»Π°Π³ΠΈ Β«-Warray-boundsΒ» ΠΈ Β«-Wzero-length-boundsΒ», выводящиС прСдупрСТдСния ΠΏΡ€ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π΅ индСкса Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρƒ массива ΠΈ использовании массивов Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹.
    • Π’ устройство virtio-crypto Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ с использованиСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° RSA.
  • Isistimu engaphansi yenethiwekhi
    • Π’ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сСтСвых мостов Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π΅ΠΆΠΈΠΌΠ° привязки ΠΏΠΎΡ€Ρ‚ΠΎΠ² (locked mode), ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΡ€Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½Π½ΠΎΠ³ΠΎ MAC-адрСса. Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… структур для ΠΎΡ†Π΅Π½ΠΊΠΈ состояния ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° STP (Spanning Tree Protocol). Π Π°Π½Π΅Π΅ для VLAN ΠΌΠΎΠ³Π»Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ прямая привязка ΠΊ STP (1:1), ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ VLAN управлялся нСзависимо. Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ mst_enable, ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ состояниС VLAN-ΠΎΠ² контролируСтся ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ MST (Multiple Spanning Trees) ΠΈ привязка VLAN-ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ M:N.
    • Umsebenzi waqhubeka ekuhlanganiseni amathuluzi kusitaki senethiwekhi ukulandelela izizathu zokulahla amaphakethe (amakhodi ezizathu). Ikhodi yesizathu ithunyelwa lapho inkumbulo ehlotshaniswa nephakethe ikhululiwe futhi ivumela izimo ezifana nokulahlwa kwephakethe ngenxa yamaphutha kanhlokweni, ukutholwa kwe-rp_filter spoofing, i-checksum engavumelekile, ukuphuma kwenkumbulo, imithetho ye-IPSec XFRM icushiwe, inombolo yokulandelana engavumelekile i-TCP, njll.
    • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ сСтСвых ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΠ· BPF-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΈΠ· пространства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ BPF_PROG_RUN ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ BPF-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² ядрС, Π½ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² пространство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ с использованиСм подсистСмы XDP (eXpress Data Path). ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ live-Ρ€Π΅ΠΆΠΈΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ XDP-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π° Π»Π΅Ρ‚Ρƒ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ сСтСвыС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π² сСтСвой стСк ΠΈΠ»ΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ устройства. Π’Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ созданиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² внСшнСго Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈΠ»ΠΈ подстановка сСтСвых ΠΊΠ°Π΄Ρ€ΠΎΠ² Π² сСтСвой стСк.
    • Для BPF-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, прикрСпляСмых ΠΊ сСтСвым cgroups, ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для явного выставлСния значСния, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ систСмными Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈ, Ρ‡Ρ‚ΠΎ позволяСт ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ систСмного Π²Ρ‹Π·ΠΎΠ²Π°.
    • Π’ подсистСму XDP (eXpress Data Path) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π±ΡƒΡ„Π΅Ρ€Π°Ρ…, Ρ‡Ρ‚ΠΎ позволяСт ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π² XDP Jumbo-ΠΊΠ°Π΄Ρ€Ρ‹ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ TSO/GRO (TCP Segmentation Offload/Generic Receive Offload) для XDP_REDIRECT.
    • Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ускорСн процСсс удалСния сСтСвых пространств ΠΈΠΌΡ‘Π½, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ вострСбовано Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… систСмах с большим ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠΌ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°.
  • Izinsiza
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ amdgpu ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° тСхнология Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠΉ синхронизации FreeSync, которая позволяСт ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ частоту обновлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° экранС, обСспСчивая ΠΏΠ»Π°Π²Π½ΠΎΡΡ‚ΡŒ ΠΈ отсутствиС Ρ€Π°Π·Ρ€Ρ‹Π²ΠΎΠ² изобраТСния Π²ΠΎ врСмя ΠΈΠ³Ρ€ ΠΈ просмотра Π²ΠΈΠ΄Π΅ΠΎ. ОбъявлСна ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GPU Aldebaran.
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ i915 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‡ΠΈΠΏΠΎΠ² Intel Alderlake N ΠΈ дискрСтных Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚ Intel DG2-G12 (Arc Alchemist).
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ nouveau обСспСчСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΠΎΠ»Π΅Π΅ высоких Π±ΠΈΡ‚Ρ€Π΅ΠΉΡ‚ΠΎΠ² для интСрфСйсов DP/eDP ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡƒΠ΄Π»ΠΈΠ½ΠΈΡ‚Π΅Π»Π΅ΠΉ кабСля lttprs (Link-Training Tunable PHY Repeaters).
    • Π’ подсистСмС drm (Direct Rendering Manager) Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… armada, exynos, gma500, hyperv, imx, ingenic, mcde, mediatek, msm, omap, rcar-du, rockchip, sprd, sti, tegra, tilcdc, xen ΠΈ vc4 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° nomodeset, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²ΠΈΠ΄Π΅ΠΎΡ€Π΅ΠΆΠΈΠΌΠΎΠ² Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра ΠΈ использованиС срСдств для Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ускорСния отрисовки, оставив Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΡΠ²ΡΠ·Π°Π½Π½ΡƒΡŽ с систСмным Ρ„Ρ€Π΅ΠΉΠΌΠ±ΡƒΡ„Π΅Ρ€ΠΎΠΌ.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ARM SoΠ‘ Qualcomm Snapdragon 625/632 (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² смартфонах LG Nexus 5X ΠΈ Fairphone FP3), Samsung Exynos 850, Samsung Exynos 7885 (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Samsung Galaxy A8), Airoha (Mediatek/EcoNet) EN7523, Mediatek mt6582 (ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ Prestigio PMT5008 3G), Microchip Lan966, Renesas RZ/G2LC, RZ/V2L, Tesla FSD, TI K3/AM62 ΠΈ i.MXRTxxxx.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ARM-устройств ΠΈ ΠΏΠ»Π°Ρ‚ Broadcom (Raspberry Pi Zero 2 W), Qualcomm (Google Herobrine R1 Chromebook, SHIFT6mq, Samsung Galaxy Book2), Rockchip (Pine64 PineNote, Bananapi-R2-Pro, STM32 Emtrion emSBS, Samsung Galaxy Tab S, Prestigio PMT5008 3G tablet), Allwinner (A20-Marsboard), Amlogic (Amediatek X96-AIR, CYX A95XF3-AIR, Haochuangy H96-Max, Amlogic AQ222 ΠΈ OSMC Vero 4K+), Aspeed (Quanta S6Q, ASRock ROMED8HM3), Marvell MVEBU/Armada (Ctera C200 V1 ΠΈ V2 NAS), Mstar (DongShanPiOne, Miyoo Mini), NXP i.MX (Protonic PRT8MM, emCON-MX8M Mini, Toradex Verdin, Gateworks GW7903).
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Ρ… систСм ΠΈ ΠΊΠΎΠ΄Π΅ΠΊΠΎΠ² AMD PDM, Atmel PDMC, Awinic AW8738, i.MX TLV320AIC31xx, Intel CS35L41, ESSX8336, Mediatek MT8181, nVidia Tegra234, Qualcomm SC7280, Renesas RZ/V2L, Texas Instruments TAS585M. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ рСализация Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠ³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для DSP-Ρ‡ΠΈΠΏΠ° Intel AVS. ОбновлСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² для Intel ADL ΠΈ Tegra234, Π° Ρ‚Π°ΠΊΠΆΠ΅ внСсСны измСнСния для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π·Π²ΡƒΠΊΠ° Π½Π° устройствах Dell, HP, Lenovo, ASUS, Samsung ΠΈ Clevo.

    ΠžΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ латиноамСриканский Π€ΠΎΠ½Π΄ свободного ПО сформировал Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ свободного ядра 5.18 β€” Linux-libre 5.18-gnu, ΠΎΡ‡ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΡ‚ элСмСнтов ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², содСрТащих нСсвободныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈΠ»ΠΈ участки ΠΊΠΎΠ΄Π°, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ примСнСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ. Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° чистка Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² для ΠΏΠ°Π½Π΅Π»Π΅ΠΉ MIPI DBI, VPU Amphion, WiFi MediaTek MT7986 WMAC, Mediatek MT7921U (USB) ΠΈ Realtek 8852a/8852c, Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Ρ… Ρ‡ΠΈΠΏΠΎΠ² Intel AVS ΠΈ Texas Instruments TAS5805M. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° чистка DTS-Ρ„Π°ΠΉΠ»ΠΎΠ² для Ρ€Π°Π·Π½Ρ‹Ρ… SoC Qualcomm с процСссорами Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ AArch64. ΠžΠ±Π½ΠΎΠ²Π»Ρ‘Π½ ΠΊΠΎΠ΄ чистки Π±Π»ΠΎΠ±ΠΎΠ² Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… ΠΈ подсистСмах AMD GPU, MediaTek MT7915, Silicon Labs WF200+ WiFi, Mellanox Spectru Ethernet, Realtek rtw8852c, Qualcomm Q6V5, Wolfson ADSP, MediaTek HCI UART.

Source: opennet.ru

Engeza amazwana