Π Π΅Π»ΠΈΠ· Π½Π° ядрото Linux 5.1

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π΄Π²Π° мСсСца, Линус Ворвалдс прСдстави Π½ΠΎΠ²Π°Ρ‚Π° вСрсия Π½Π° ядрото Linux 5.1. Π‘Ρ€Π΅Π΄ Π½Π°ΠΉ-Π·Π½Π°Ρ‡ΠΈΠΌΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ: Π½ΠΎΠ² интСрфСйс Π·Π° асинхронСн Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ io_uring, Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° NVDIMM ΠΊΠ°Ρ‚ΠΎ RAM, ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° сподСлСна Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ Π² Nouveau, ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈ систСми Ρ‡Ρ€Π΅Π· fanotify, Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° настройка Π½Π° Π½ΠΈΠ²Π°Ρ‚Π° Π½Π° компрСсия Zstd Π² Btrfs, Π½ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ cpuidle TEO, рСализация Π½Π° систСмни извиквания Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΡ‚ 2038 Π³ΠΎΠ΄ΠΈΠ½Π°, Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ ΠΎΡ‚ устройства device-mapper Π±Π΅Π· initramfs, LSM ΠΌΠΎΠ΄ΡƒΠ» SafeSetID, ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ live ΠΏΠ°Ρ‚Ρ‡ΠΈ.

Основни нововъвСдСния:

  • Дисковата подсистСма, Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈΡ‚Π΅ систСми
    • Π’ΡŠΠ²Π΅Π΄Π΅Π½ Π΅ Π½ΠΎΠ² интСрфСйс Π·Π° асинхронСн Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ β€” io_uring, ΠΊΠΎΠΉΡ‚ΠΎ сС ΠΎΡ‚Π»ΠΈΡ‡Π°Π²Π° с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° polling Π·Π° Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΊΠ°ΠΊΡ‚ΠΎ с буфСризация, Ρ‚Π°ΠΊΠ° ΠΈ Π±Π΅Π·. НапомнямС, Ρ‡Π΅ прСдлоТСният ΠΏΠΎ-Ρ€Π°Π½ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° асинхронСн Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ Β«aioΒ» Π½Π΅ ΠΏΠΎΠ΄ΠΊΡ€Π΅ΠΏΡΡˆΠ΅ Π±ΡƒΡ„Π΅Ρ€ΠΈΡ€Π°Π½ Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄, моТСшС Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ само Π² Ρ€Π΅ΠΆΠΈΠΌ O_DIRECT (Π±Π΅Π· буфСризация ΠΈ заобикалянС Π½Π° кСша), имашС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΈΠ·Ρ‡Π°ΠΊΠ²Π°Π½Π΅ Π½Π° наличността Π½Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ ΠΈ показвашС Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ€Π°Π·Ρ…ΠΎΠ΄ΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°.

      Π’ Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° API
      io_uring Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ сС ΠΎΠΏΠΈΡ‚Π°Ρ…Π° Π΄Π° отстранят Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈΡ‚Π΅ Π½Π° стария интСрфСйс aio. По производитСлност io_uring Π΅ ΠΌΠ½ΠΎΠ³ΠΎ близък Π΄ΠΎ SPDK ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π°Π΄ΠΌΠΈΠ½Π°Π²Π° libaio ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΠΎΠ»Π»ΠΈΠ½Π³. Π—Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° io_uring Π² ΠΊΡ€Π°ΠΉΠ½ΠΈ прилоТСния, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ Π² пространство Π½Π° потрСбитСля, Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° liburing, прСдоставяща високоуровнСва ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° Π½Π°Π΄ интСрфСйса Π½Π° ядрото;

    • Π’ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° прослСдяванС Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Π² FS fanotify() Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° прослСдяванС Π½Π° ситуации Π½Π° промяна Π½Π° супСрблока ΠΈ структурата dirent (ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Π·Π° създаванС, ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ ΠΈ прСмСстванС Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ). ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ΠΈΡ‚Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎΠΌΠ°Π³Π°Ρ‚ Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ с мащабируСмостта, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‚ ΠΏΡ€ΠΈ създаванС Π½Π° рСкурсивни прослСдявания Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈ систСми Ρ‡Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° inotify (ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π² dirent ΠΏΡ€Π΅Π΄ΠΈ ΠΌΠΎΠΆΠ΅Ρ…Π° Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ прослСдявани само Ρ‡Ρ€Π΅Π· inotify, Π½ΠΎ
      СфСктивността Π² условия Π½Π° рСкурсивно прослСдяванС Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π²Π»ΠΎΠΆΠ΅Π½ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΎΡΡ‚Π°Π²ΡΡˆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π·Π° ΠΆΠ΅Π»Π°Π΅Π½Π΅). Π‘Π΅Π³Π° ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π΄Π° сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° Ρ‡Ρ€Π΅Π· fanotify;
    • Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²Π°Ρ‚Π° систСма Btrfs Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° настройка Π½Π° Π½ΠΈΠ²ΠΎΡ‚ΠΎ Π½Π° компрСсия Π·Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΠ° zstd, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС счита Π·Π° ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π΅Π½ компромис ΠΌΠ΅ΠΆΠ΄Ρƒ Π±ΡŠΡ€Π·ΠΈΡ, Π½ΠΎ Π½Π΅Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π΅Π½ lz4 ΠΈ бавния, Π½ΠΎ Π΄ΠΎΠ±Ρ€Π΅ компрСсиращ xz. Подобно Π½Π° ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΎΡ‚ΠΎ възмоТно Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΈΠ²ΠΎΡ‚ΠΎ Π½Π° компрСсия ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° zlib Π·Π° zstd, Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° опцията Π·Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½Π΅ Β«-o compress=zstd:levelΒ». ΠŸΡ€ΠΈ тСстовС ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ ΠΏΡŠΡ€Π²ΠΎ Π½ΠΈΠ²ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° компрСсия Π½Π° Π΄Π°Π½Π½ΠΈ 2.658 ΠΏΡŠΡ‚ΠΈ със скорост Π½Π° компрСсиранС 438.47 MB/s, скорост Π½Π° разкомпрСсиранС 910.51 MB/s ΠΈ консумация Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΎΡ‚ 780 MB, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ максималното 15 Π½ΠΈΠ²ΠΎ β€” 3.126 ΠΏΡŠΡ‚ΠΈ, Π½ΠΎ ΠΏΡ€ΠΈ скорост Π½Π° компрСсиранС ΠΎΡ‚ 37.30 MB/s, разкомпрСсиранС 878.84 MB/s ΠΈ консумация Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΎΡ‚ 2547 MB;
    • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΎ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ ΠΎΡ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²Π° систСма, Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° Π½Π° устройството device-mapper, Π±Π΅Π· ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° initramfs. Π—Π°ΠΏΠΎΡ‡Π²Π°ΠΉΠΊΠΈ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° ядрото, устройството device-mapper ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π² процСса Π½Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°Ρ‚ΠΎ дял с ΠΊΠΎΡ€Π΅Π½ΠΎΠ²Π° Π€Π‘. Настройката Π½Π° дяла сС ΠΎΡΡŠΡ‰Π΅ΡΡ‚Π²ΡΠ²Π° Ρ‡Ρ€Π΅Π· зарСТдащия ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ Β«dm-mod.createΒ». Π‘Ρ€Π΅Π΄ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ‚Π΅ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ device-mapper са: Β«cryptΒ», Β«delayΒ», Β«linearΒ», Β«snapshot-originΒ» ΠΈ Β«verityΒ»;
    • Π’ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π°Ρ‚Π° Π·Π° Flash Ρ„Π°ΠΉΠ»ΠΎΠ²Π°Ρ‚Π° систСма F2FS Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Ρ„Π»Π°Π³ F2FS_NOCOW_FL, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ€Π΅ΠΆΠΈΠΌΠ° copy-on-write Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Ρ„Π°ΠΉΠ»;
    • Из ядрото Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π° систСма Exofs, прСдставляваща Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° ext2, Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Π½Π° Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с ΠΎΠ±Π΅ΠΊΡ‚Π½ΠΎ-Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° OSD (Object-based Storage Device). Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° SCSI ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π·Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ устройства Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ;
  • Виртуализация ΠΈ сигурност
    • ΠŸΡ€ΠΈ prctl() Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° опция PR_SPEC_DISABLE_NOEXEC, която управлява спСкулативното изпълнСниС Π½Π° инструкции Π·Π° избрания процСс. Новата опция позволява сСлСктивно Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° спСкулативното изпълнСниС Π·Π° процСси, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π°Ρ‚Π°ΠΊΡƒΠ²Π°Π½ΠΈ Ρ‡Ρ€Π΅Π· Π°Ρ‚Π°ΠΊΠ° ΠΎΡ‚ Ρ‚ΠΈΠΏ Spectre. Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°Ρ‚Π° Π²Π°ΠΆΠΈ Π΄ΠΎ ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° exec();
    • Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ Π΅ LSM ΠΌΠΎΠ΄ΡƒΠ» SafeSetID, позволяващ Π½Π° систСмнитС услуги бСзопасно Π΄Π° управляват ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π±Π΅Π· повишСни ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ (CAP_SETUID) ΠΈ Π±Π΅Π· ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° правомощията Π½Π° потрСбитСля root. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡ‚Π΅ сС ΠΎΡΡŠΡ‰Π΅ΡΡ‚Π²ΡΠ²Π° Ρ‡Ρ€Π΅Π· опрСдСлянС Π² securityfs Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° бял списък Π½Π° допустимитС Π²Ρ€ΡŠΠ·ΠΊΠΈ (Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Β«UID1:UID2Β»);
    • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са нискоуровнСви ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° стСкова организация Π½Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π·Π° бСзопасност (LSM). ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ядрото Β«lsmΒ», позволяващ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎΠ²Π°, ΠΊΠΎΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ сС Π·Π°Ρ€Π΅ΠΆΠ΄Π°Ρ‚ ΠΈ Π² какъв Ρ€Π΅Π΄;
    • Π’ подсистСмата Π·Π° ΠΎΠ΄ΠΈΡ‚ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° пространства ΠΎΡ‚ ΠΈΠΌΠ΅Π½Π° Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅;
    • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° GCC плъгина structleak, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΈ изтичания Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°. ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½Π° Π΅ инициализация Π½Π° всички ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² ΠΊΠΎΠ΄Π° Ρ‡Ρ€Π΅Π· ΠΏΠΎΠ·ΠΎΠ²Π°Π²Π°Π½Π΅ ΠΏΠΎ рСфСрСнция Π² стСка;
  • ΠœΡ€Π΅ΠΆΠΎΠ²Π° подсистСма
    • Π—Π° сокСтитС Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π½ΠΎΠ²Π°Ρ‚Π° опция Β«SO_BINDTOIFINDEXΒ», ΠΏΠΎΠ΄ΠΎΠ±Π½Π° Π½Π°
      Β«SO_BINDTODEVICEΒ», Π½ΠΎ Π²Π·Π΅ΠΌΠ°Ρ‰Π° индСксния Π½ΠΎΠΌΠ΅Ρ€ Π½Π° мрСТовия интСрфСйс вмСсто ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° интСрфСйса;
    • Π’ стСка mac80211 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Π½Π°Π·Π½Π°Ρ‡Π°Π²Π°Π½Π΅ Π½Π° Π΅Π΄Π½ΠΎ устройство с няколко BSSID (MAC адрСси). Π’ Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π·Π° оптимизация Π½Π° производитСлността Π½Π° WiFi Π² стСка mac80211 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΎΡ‚Ρ‡Π΅Ρ‚ Π·Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π΅Ρ„ΠΈΡ€Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅ ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° разпрСдСлянС Π½Π° Π΅Ρ„ΠΈΡ€Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ няколко станции (ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° Π² Ρ€Π΅ΠΆΠΈΠΌ Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ, разпрСдСлянСто Π½Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π·Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π±Π°Π²Π½ΠΈ Π±Π΅Π·ΠΆΠΈΡ‡Π½ΠΈ станции, вмСсто Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ всички станции);
    • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Β«devlink healthΒ«, прСдоставяща извСстия ΠΏΡ€ΠΈ възникванС Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с мрСТовия интСрфСйс;
  • ΠŸΠ°ΠΌΠ΅Ρ‚ ΠΈ систСмни услуги
    • Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ сигурна доставка Π½Π° сигнали, Π²Π·ΠΈΠΌΠ°Ρ‰Π° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½Π°Ρ‚Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° PID. НапримСр, ΠΏΡ€ΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° kill, ΠΏΡ€Π΅Π΄ΠΈ Π΅ ΠΌΠΎΠ³Π»ΠΎ Π΄Π° сС случи ситуация, ΠΏΡ€ΠΈ която Π²Π΅Π΄Π½Π°Π³Π° слСд ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° сигнала, цСлСвият PID Π΅ Π±ΠΈΠ» освободСн ΠΏΠΎΡ€Π°Π΄ΠΈ Π·Π°Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° процСса ΠΈ Π·Π°Π΅Ρ‚ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ процСс, ΠΊΠΎΠ΅Ρ‚ΠΎ Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка Π΅ ΠΏΡ€Π΅Π΄Π°Π²Π°Π»ΠΎ сигнала Π½Π° Π΄Ρ€ΡƒΠ³ процСс. Π—Π° Π΄Π° сС ΠΈΠ·Π±Π΅Π³Π½Π°Ρ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ситуации, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π½ΠΎΠ² систСмСн ΠΏΠΎΠ²ΠΈΠΊ pidfd_send_signal, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈ дСскриптори ΠΎΡ‚ /proc/pid Π·Π° осигуряванС Π½Π° стабилна ΠΏΡ€ΠΈΠ²ΡŠΡ€Π·Π°Π½ΠΎΡΡ‚ към процСса. Π”ΠΎΡ€ΠΈ Π°ΠΊΠΎ PID бъдС ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° систСмния ΠΏΠΎΠ²ΠΈΠΊ, файловият дСскриптор няма Π΄Π° сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΈ ΠΌΠΎΠΆΠ΅ бСзопасно Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° сигнал Π΄ΠΎ процСса;
    • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΎ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° устройства с постоянна ΠΏΠ°ΠΌΠ΅Ρ‚ (persistent memory, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ NVDIMM) ΠΊΠ°Ρ‚ΠΎ RAM. ДосСга ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ устройства сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ…Π° Π² ядрото ΠΊΠ°Ρ‚ΠΎ устройства Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, Π½ΠΎ сСга ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΈ ΠΊΠ°Ρ‚ΠΎ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚. Ѐункционалността Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π² ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π½Π° ТСланията Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅, Π³ΠΎΡ‚ΠΎΠ²ΠΈ Π΄Π° сС справят с ΠΏΠΎ-ниска производитСлност ΠΈ ΠΆΠ΅Π»Π°Π΅Ρ‰ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ стандартния API Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° ядрото Π½Π° Linux, вмСсто Π΄Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Ρ‚ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ систСми Π·Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π² пространството Π½Π° потрСбитСля, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ Π²ΡŠΡ€Ρ…Ρƒ mmap Π·Π° dax-Ρ„Π°ΠΉΠ»Π°;
    • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π·Π° ΠΏΡ€Π°Π·Π΅Π½ процСсор (cpuidle, ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π΅ΡˆΠ°Π²Π° ΠΊΠΎΠ³Π° ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈ CPU Π² дълбоки Ρ€Π΅ΠΆΠΈΠΌΠΈ Π½Π° икономия Π½Π° СнСргия, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΏΠΎ-дълбок Π΅ Ρ€Π΅ΠΆΠΈΠΌΡŠΡ‚, Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-голяма икономия, Π½ΠΎ ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π²Ρ€Π΅ΠΌΠ΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π° ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌΠ°) β€” TEO (Timer Events Oriented Governor). Π”ΠΎ сСга бяха ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π½ΠΈ Π΄Π²Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° cpuidle β€” Β«menuΒ» ΠΈ Β«ladderΒ», ΠΊΠΎΠΈΡ‚ΠΎ сС Ρ€Π°Π·Π»ΠΈΡ‡Π°Π²Π°Ρ‚ ΠΏΠΎ хСвристиката. Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Β«menuΒ» ΠΈΠΌΠ° извСстни ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с Π²Π·Π΅ΠΌΠ°Π½Π΅Ρ‚ΠΎ Π½Π° хСвристични Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΊΠΎΠ΅Ρ‚ΠΎ бСшС Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π΄Π° сС ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²ΠΈ Π½ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. TEO сС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€Π° ΠΊΠ°Ρ‚ΠΎ Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Β«menuΒ», позволяваща постиганСто Π½Π° ΠΏΠΎ-висока производитСлност ΠΏΡ€ΠΈ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° Π΅Π½Π΅Ρ€Π³ΠΎΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅.
      Новият ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ ΠΏΡ€ΠΈ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Β«cpuidle.governor=teoΒ»;
    • Π’ Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° ΠΏΠΎ отстраняванС Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΡ‚ 2038 Π³ΠΎΠ΄ΠΈΠ½Π°, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ ΠΎΡ‚ ΠΏΡ€Π΅Π»ΠΈΠ²Π°Π½Π΅ Π½Π° 32-битовия Ρ‚ΠΈΠΏ time_t, Π² систСмнитС ΠΏΠΎΠ²ΠΈΡ†ΠΈ са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ ΠΎΠΏΡ†ΠΈΠΈ, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‰ΠΈ 64-Π±ΠΈΡ‚ΠΎΠ²ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΈ Π·Π° 32-Π±ΠΈΡ‚ΠΎΠ²ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° 64-Π±ΠΈΡ‚ΠΎΠ²Π°Ρ‚Π° структура time_t ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€ΠΈΠ»Π°Π³Π° Π½Π° всички Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ. Аналогични ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ са Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΈ Π² ΠΌΡ€Π΅ΠΆΠΎΠ²Π°Ρ‚Π° подсистСма Π·Π° ΠΎΠΏΡ†ΠΈΠΈ timestamp Π½Π° ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈΡ‚Π΅ сокСти;
    • Π’ систСмата Π·Π° Π³ΠΎΡ€Π΅Ρ‰ΠΎ Π½Π°Π»Π°Π³Π°Π½Π΅ Π½Π° ΠΏΠ°Ρ‡ΠΎΠ²Π΅ Π² ядрото (live patching) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Β«Atomic ReplaceΒ» Π·Π° Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎ ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° сСрия ΠΎΡ‚ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ към Π΅Π΄Π½Π° функция. Π£ΠΊΠ°Π·Π°Π½Π°Ρ‚Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ позволява разпространСниСто Π½Π° сводни ΠΏΠ°Ρ‡ΠΎΠ²Π΅, ΠΎΠ±Ρ…Π²Π°Ρ‰Π°Ρ‰ΠΈ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ няколко ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, вмСсто Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ слоТния Π·Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½Π΅ процСс Π½Π° ΠΏΠΎΠ΅Ρ‚Π°ΠΏΠ½ΠΎ Π½Π°Π»Π°Π³Π°Π½Π΅ Π½Π° live-ΠΏΠ°Ρ‡ΠΎΠ²Π΅ Π² строго ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Ρ€Π΅Π΄. Ако ΠΏΡ€Π΅Π΄ΠΈ всяка слСдваща промяна Ρ‚Ρ€ΡΠ±Π²Π°ΡˆΠ΅ Π΄Π° сС основава Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° функцията слСд ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½Π°Ρ‚Π° промяна, сСга Π΅ възмоТно разпространСниСто Π½Π° Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ няколко ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Π΅Π΄Π½ΠΎ ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ (Ρ‚.Π΅. ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‰ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ Π΅Π΄ΠΈΠ½ сводСн ΠΏΠ°Ρ‡ спрямо основното ядро вмСсто Π²Π΅Ρ€ΠΈΠ³Π° ΠΎΡ‚ взаимозависими ΠΏΠ°Ρ‡ΠΎΠ²Π΅);
    • ОбявСна остаряла ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π·Π° изпълними Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ a.out ΠΈ
      Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ ΠΊΠΎΠ΄ Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° core-Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ a.out, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ Π² Π·Π°Π±Ρ€Π°Π²Π°. Π€ΠΎΡ€ΠΌΠ°Ρ‚ a.out ΠΎΡ‚Π΄Π°Π²Π½Π° Π½Π΅ сС ΠΏΡ€ΠΈΠ»Π°Π³Π° Π½Π° систСми с Linux, Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ a.out ΠΎΡ‚Π΄Π°Π²Π½Π° Π½Π΅ сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΎΡ‚ ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ инструмСнтални срСдства Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π·Π° Linux ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅. ОсвСн Ρ‚ΠΎΠ²Π°, Π·Π°Ρ€Π΅ΠΆΠ΄Π°Ρ‡ΡŠΡ‚ Π·Π° a.out Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ изцяло Π² пространството Π½Π° потрСбитСля;
    • Π’ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° вСрификация Π½Π° BPF-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° опрСдСлянС ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ Π½Π° Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π΅ΠΌ ΠΊΠΎΠ΄. Π’ ΡΡŠΡΡ‚Π°Π²Π° Π½Π° ядрото ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ ΠΏΠ°Ρ‡ΠΎΠ²Π΅ с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° spinlock Π·Π° подсистСмата BPF, прСдоставящи Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎΡ‚ΠΎ изпълнСниС Π½Π° BPF-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ;
  • ΠžΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Nouveau Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ…Π΅Ρ‚Π΅Ρ€ΠΎΠ³Π΅Π½Π½ΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, осигуряваща Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π½Π° CPU ΠΈ GPU Π΄Π° ΠΈΠΌΠ°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ ΠΎΠ±Ρ‰ΠΈ синхронизирани области Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°. БистСмата Π·Π° сподСлСна Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ (SVM, shared virtual memory) Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° подсистСмата HMM (Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ…Π΅Ρ‚Π΅Ρ€ΠΎΠ³Π΅Π½Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚), позволяваща ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° устройства със собствСни Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° (MMU, memory management unit), ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ основната ΠΏΠ°ΠΌΠ΅Ρ‚. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Ρ‡Ρ€Π΅Π· HMM ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½ΠΎ адрСсно пространство ΠΌΠ΅ΠΆΠ΄Ρƒ GPU ΠΈ CPU, Π² ΠΊΠΎΠ΅Ρ‚ΠΎ GPU ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ основната ΠΏΠ°ΠΌΠ΅Ρ‚ Π½Π° процСса. ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° SVM Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° засСга само Π·Π° GPU ΠΎΡ‚ сСмСйството Pascal, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Π΅ осигурСна ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° ΠΈ Π·Π° GPU Volta ΠΈ Turing. ОсвСн Ρ‚ΠΎΠ²Π°, Π² Nouveau Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π½ΠΎΠ² ioctl Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° миграцията Π½Π° области ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° процСситС Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° GPU;
    • Π’ DRM-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Intel Π·Π° GPU Skylake ΠΈ ΠΏΠΎ-Π½ΠΎΠ²ΠΈ (gen9+) Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Ρ€Π΅ΠΆΠΈΠΌΡŠΡ‚ fastboot, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π° Π½Π΅Π½ΡƒΠΆΠ½ΠΈ смСни Π½Π° Ρ€Π΅ΠΆΠΈΠΌΠΈΡ‚Π΅ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅. Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ Π½Π° устройства, Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈΡ‚Π΅ Coffelake ΠΈ Ice Lake. Π—Π° Ρ‡ΠΈΠΏΠΎΠ²Π΅Ρ‚Π΅ Coffelake Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° GVT (виртуализация Π½Π° GPU). Π—Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ GPU Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° VFIO EDID. Π—Π° LCD ΠΏΠ°Π½Π΅Π»ΠΈ MIPI/DSI Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ACPI/PMIC. Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π½ΠΎΠ²ΠΈ TV-Ρ€Π΅ΠΆΠΈΠΌΠΈ 1080p30/50/60 TV;
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° amdgpu Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° GPU Vega10/20 BACO. Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ са срСдства Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° СнСргията Π·Π° Vega 10/20 ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΡ…Π»Π°ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° Vega 10. Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ PCI ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ Π½Π° устройства Π·Π° GPU Picasso. Π”ΠΎΠ±Π°Π²Π΅Π½ интСрфСйс Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ зависимости с Ρ†Π΅Π» ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ Π½Π° Π²Π·Π°ΠΈΠΌΠ½ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ;
    • Π”ΠΎΠ±Π°Π²Π΅Π½ DRM/KMS Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π·Π° ускоритСли Π½Π° Π΅ΠΊΡ€Π°Π½Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ARM Komeda (Mali D71);
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π΅ΠΊΡ€Π°Π½Π½ΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ Toppoly TPG110, Sitronix ST7701, PDA 91-00156-A0, LeMaker BL035-RGB-002 3.5 ΠΈ Kingdisplay kd097d04;
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π·Π²ΡƒΠΊΠΎΠ²ΠΈ ΠΊΠΎΠ΄Π΅Ρ†ΠΈ Rockchip RK3328, Cirrus Logic CS4341 ΠΈ CS35L36, MediaTek MT6358, Qualcomm WCD9335 ΠΈ Ingenic JZ4725B, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π·Π²ΡƒΠΊΠΎΠ²Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Mediatek MT8183;
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° NAND ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€ΠΈ Flash STMicroelectronics FMC2, Amlogic Meson;
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ускоритСли Π·Π° систСми Π½Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Habana AI;
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π³ΠΈΠ³Π°Π±ΠΈΡ‚Π½ΠΈ Ethernet ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€ΠΈ NXP ENETC ΠΈ Π±Π΅Π·ΠΆΠΈΡ‡Π½ΠΈ интСрфСйси MediaTek MT7603E (PCIe) ΠΈ MT76x8.

Π‘ΡŠΠ²ΠΌΠ΅ΡΡ‚Π½ΠΎ ЛатинокамСриканският Π€ΠΎΠ½Π΄ Π·Π° свободСн софтуСр сформира
Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ напълно свободно ядро 5.1 β€” Linux-libre 5.1-gnu, почистСно ΠΎΡ‚ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€ ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈ, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ΠΈ нСсвободни ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ ΠΈΠ»ΠΈ ΡƒΡ‡Π°ΡΡ‚ΡŠΡ†ΠΈ ΠΎΡ‚ ΠΊΠΎΠ΄, чиято област Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° ΠΎΡ‚ производитСля. Π’ Π½ΠΎΠ²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π΅ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ΠΎ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π±Π»ΠΎΠ±ΠΎΠ²Π΅ Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈΡ‚Π΅ mt7603 ΠΈ goya. ОбновСн Π΅ ΠΊΠΎΠ΄ΡŠΡ‚ Π·Π° почистванС Π½Π° Π±Π»ΠΎΠ±ΠΎΠ²Π΅Ρ‚Π΅ Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈΡ‚Π΅ ΠΈ подсистСмитС wilc1000, iwlwifi, soc-acpi-intel, brcmfmac, mwifiex, btmrvl, btmtk ΠΈ touchscreen_dmi. ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‚Π΅Π½ΠΎ Π΅ почистванСто Π½Π° Π±Π»ΠΎΠ±ΠΎΠ²Π΅Ρ‚Π΅ Π² Π±ΡƒΡƒΡ‚Π»ΠΎΡƒΠ΄Π΅Ρ€Π° Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€ lantiq xrx200 ΠΏΠΎΡ€Π°Π΄ΠΈ Π½Π΅Π³ΠΎΠ²ΠΎΡ‚ΠΎ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ ΠΎΡ‚ ядрото.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster