Π‘Π»Π΅Π΄ Π΄Π²Π° ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, ΠΠΈΠ½ΡΡ Π’ΠΎΡΠ²Π°Π»Π΄Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈ Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ Linux 5.12. Π‘ΡΠ΅Π΄ Π½Π°ΠΉ-Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ: ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π·ΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² Btrfs, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΌΠ°ΠΏΠΈΠ½Π³ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ARM Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ, ΡΠ΅ΠΆΠΈΠΌ Π½Π° "Π½Π΅ΡΡΡΠΏΠ΅Π»ΠΈΠ²Π°" Π·Π°ΠΏΠΈΡΡ Π² NFS, ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ LOOKUP_CACHED Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΠΏΡΡΠΈΡΠ° ΠΎΡ ΠΊΠ΅ΡΠ°, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π°ΡΠΎΠΌΠ°ΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π² BPF, ΠΎΡΠ»Π°Π΄ΡΡΠ½Π° ΡΠΈΡΡΠ΅ΠΌΠ° KFENCE Π·Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΡΠ°Π±ΠΎΡΠ° Π² ΠΎΡΠ΄Π΅Π»Π΅Π½ ΠΏΠΎΡΠΎΠΊ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° NAPI poll ΡΠ΅ΠΆΠΈΠΌ Π² ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ ΡΡΠ΅ΠΊ, Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ ACRN, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠΌΡΠ½Π° Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π½Π° preempt ΠΌΠΎΠ΄Π΅Π»Π° Π² ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π½Π° Π·Π°Π΄Π°ΡΠΈ ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° LTO ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ° Π² Clang.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΅ ΠΏΡΠΈΠ΅ΡΠΎ 14170 (Π² ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ 15480) ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈ ΠΎΡ 1946 (1991) ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° ΠΏΠ°ΡΠ° β 38 ΠΠ± (ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π·Π°ΡΡΠ³Π°Ρ 12102 (12090) ΡΠ°ΠΉΠ»Π°, Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° 538599 (868025) ΡΠ΅Π΄Π° ΠΊΠΎΠ΄, ΠΈΠ·ΡΡΠΈΡΠΈ ΡΠ° 333377 (261456) ΡΠ΅Π΄Π°). ΠΠΊΠΎΠ»ΠΎ 43% ΠΎΡ Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½ΠΈ Π² 5.12 ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΎΠΊΠΎΠ»ΠΎ 17% ΠΎΡ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΠΈΠΌΠ°Ρ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ΄Π°, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅Π½ Π·Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ, 12% Π΅ ΡΠ²ΡΡΠ·Π°Π½ΠΎ Ρ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ ΡΡΠ΅ΠΊ, 5% β Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈ 4% β Ρ Π²ΡΡΡΠ΅ΡΠ½ΠΈΡΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ.
ΠΡΠ½ΠΎΠ²Π½ΠΈ Π½ΠΎΠ²ΠΎΠ²ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ:
- ΠΠΈΡΠΊΠΎΠ²Π°ΡΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°, Π²Ρ
ΠΎΠ΄/ΠΈΠ·Ρ
ΠΎΠ΄ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΌΠ°ΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π·Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ (Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΡΡΠΏΠΎΡΡΠ°Π²ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° Π΅Π΄ΠΈΠ½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π½Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ ΡΡΠΆΠ΄ Π΄ΡΠ» Ρ Π΄ΡΡΠ³ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π² ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°). ΠΠ°ΠΏΠΈΡΠ°Π½Π΅ΡΠΎ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ FAT, ext4 ΠΈ XFS. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΎΠΏΡΠΎΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΌΠ°ΠΏΠΈΡΠ°Π½Π΅ΡΠΎ ΡΠ΅ ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° Π² ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΠΏΡΠ΅Π½ΠΎΡΠΈΠΌΠΈ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ systemd-homed, ΠΊΠΎΠ΅ΡΠΎ Π΄Π°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π΄Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Ρ ΡΠ²ΠΎΠΈΡΠ΅ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π½Π° Π²ΡΠ½ΡΠ½ΠΈ Π½ΠΎΡΠΈΡΠ΅Π»ΠΈ ΠΈ Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠΈ, ΡΠΈΡΡΠΎ ΠΏΠΎΠ΄ΡΠ΅Π΄Π±Π° Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π΅ ΡΡΠ²ΠΏΠ°Π΄Π°. ΠΡΡΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ Π²ΡΠ½ΡΠ΅Π½ Ρ ΠΎΡΡ, Π±Π΅Π· ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ Π·Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΡΠΈΡΠ΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°.
- Π ΡΠ΄ΡΠΎΡΠΎ Π±ΡΡ Π° ΠΏΡΠΈΠ΅ΡΠΈ ΠΏΠ°ΡΡΠΎΠ²Π΅ LOOKUP_CACHED, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈΡ ΠΏΡΡ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅, ΡΠ°ΠΌΠΎ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Π½Π°Π»ΠΈΡΠ½ΠΈΡΠ΅ Π² ΠΊΠ΅ΡΠ° Π΄Π°Π½Π½ΠΈ. Π Π΅ΠΆΠΈΠΌΡΡ LOOKUP_CACHED ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° ΠΏΡΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° openat2() ΡΡΠ΅Π· ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ»Π°Π³Π° RESOLVE_CACHED, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΡΠ°ΠΌΠΎ ΠΎΡ ΠΊΠ΅ΡΠ°, Π° Π°ΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΠΏΡΡΡ ΠΈΠ·ΠΈΡΠΊΠ²Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ, ΡΠ΅ Π²ΡΡΡΠ° Π³ΡΠ΅ΡΠΊΠ° EAGAIN.
- Π ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Btrfs Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π·ΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π° ΡΠ²ΡΡΠ΄ΠΈ ΠΌΠ°Π³Π½ΠΈΡΠ½ΠΈ Π΄ΠΈΡΠΊΠΎΠ²Π΅ ΠΈΠ»ΠΈ NVMe SSD, ΠΏΡΠΈ ΠΊΠΎΠΈΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΅ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΎ Π½Π° Π·ΠΎΠ½ΠΈ, ΡΡΡΡΠ°Π²ΡΡΠΈ Π³ΡΡΠΏΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΈΠ»ΠΈ ΡΠ΅ΠΊΡΠΎΡΠΈ, Π² ΠΊΠΎΠΈΡΠΎ Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠ°ΠΌΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Ρ ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ»Π°ΡΠ° Π³ΡΡΠΏΠ° Π±Π»ΠΎΠΊΠΎΠ²Π΅). Π ΡΠ΅ΠΆΠΈΠΌ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π°Π½Π½ΠΈ Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠΎΠ΄ ΡΡΡΠ°Π½ΠΈΡΠ° (subpage).
- Π ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° F2FS Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌ ΠΈ Π½ΠΈΠ²ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π²ΠΈΡΠΎΠΊΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ Π·Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° LZ4. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΎΠΏΡΠΈΡ Π·Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½Π΅ checkpoint_merge.
- ΠΠ½Π΅Π΄ΡΠ΅Π½Π° Π΅ Π½ΠΎΠ²Π° ioctl ΠΊΠΎΠΌΠ°Π½Π΄Π° FS_IOC_READ_VERITY_METADATA Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, Π·Π°ΡΠΈΡΠ΅Π½ΠΈ Ρ fs-verity.
- Π ΠΊΠ»ΠΈΠ΅Π½ΡΠ° NFS Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΡΠ΅ΠΆΠΈΠΌ Π½Π° βΠ½Π΅ΡΡΡΠΏΠ΅Π»ΠΈΠ²Π°β Π·Π°ΠΏΠΈΡ (writes=eager), ΠΏΡΠΈ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΡ Π½Π° ΠΊΠΎΠΉΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ ΠΏΠΎ Π·Π°ΠΏΠΈΡ Π² ΡΠ°ΠΉΠ» Π²Π΅Π΄Π½Π°Π³Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ Π½Π° ΡΡΡΠ²ΡΡΠ°, Π·Π°ΠΎΠ±ΠΈΠΊΠ°Π»ΡΠΉΠΊΠΈ ΡΡΡΠ°Π½ΠΈΡΠ½ΠΈΡ ΠΊΠ΅Ρ. Π’ΠΎΠ·ΠΈ ΡΠ΅ΠΆΠΈΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ, ΠΎΡΠΈΠ³ΡΡΡΠ²Π° Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π·Π°Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π² ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈ Π² Π½ΡΠΊΠΎΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π΄Π°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°.
- Π CIFS (SMB) ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π½ΠΎΠ²ΠΈ ΠΎΠΏΡΠΈΠΈ Π·Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½Π΅: acregmax Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ acdirmax Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ Π½Π° ΠΊΠ°ΡΠ°Π»ΠΎΠ·ΠΈ.
- Π XFS Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΊΠ²ΠΎΡΠΈ, ΡΡΠΊΠΎΡΠ΅Π½ΠΎ Π΅ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° fsync, ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° Π½Π° ΠΊΠΎΠ΄Π° growfs Π·Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° Π·Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°.
- ΠΠ°ΠΌΠ΅Ρ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΡΡΠ»ΡΠ³ΠΈ
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° DTMP (Dynamic Thermal Power Management), ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ ΡΠ΅Π³ΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° Π΅Π½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ ΠΎΠ±ΡΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ°ΡΠ°.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Ρ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ° Clang, Π²ΠΊΠ»ΡΡΠ²Π°ΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ (LTO, Link Time Optimization). LTO-ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π°Ρ Ρ ΡΠΎΠ²Π°, ΡΠ΅ Π²Π·Π΅ΠΌΠ°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΡΡΠ°ΡΡΠ²Π°ΡΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅, Π΄ΠΎΠΊΠ°ΡΠΎ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡΡ Ρ Π²ΡΠ΅ΠΊΠΈ ΡΠ°ΠΉΠ» ΠΏΠΎΠΎΡΠ΄Π΅Π»Π½ΠΎ ΠΈ Π½Π΅ ΠΎΡΡΠΈΡΠ°Ρ ΡΡΠ»ΠΎΠ²ΠΈΡΡΠ° Π½Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈ, Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½ΠΈ Π² Π΄ΡΡΠ³ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ LTO Π·Π° ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΡ Π΄ΡΡΠ³ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ inlinΠ΅-ΡΠ°Π·Π²ΡΡΡΠ°Π½Π΅, Π½Π΅ ΡΠ΅ Π²ΠΊΠ»ΡΡΠ²Π° Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ ΠΊΠΎΠ΄ Π² ΠΈΠ·ΠΏΡΠ»Π½ΡΠ΅ΠΌΠΈΡ ΡΠ°ΠΉΠ», ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠΈΠΏΠΎΠ²Π΅ΡΠ΅ ΠΈ ΠΎΠ±ΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ½ΠΎ Π½ΠΈΠ²ΠΎ. ΠΠΎΠ΄ΠΊΡΠ΅ΠΏΠ°ΡΠ° Π·Π° LTO Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° Π΄ΠΎ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈΡΠ΅ x86 ΠΈ ARM64.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΡΠ΅ΠΆΠΈΠΌΠΈ Π½Π° ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²ΠΎ (PREEMPT) Π² ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π½Π° Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ (preempt=none/voluntary/full) ΠΈΠ»ΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ° ΡΡΠ΅Π· debugfs (/debug/sched_debug), ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠ΅ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° PREEMPT_DYNAMIC. Π Π΅ΠΆΠΈΠΌΡΡ Π½Π° ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²ΠΎ ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ Π·Π°Π΄Π°Π²Π° ΡΠ°ΠΌΠΎ Π½Π° Π½ΠΈΠ²ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ. Π’Π°Π·ΠΈ ΠΏΡΠΎΠΌΡΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅ Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΡΠ΄ΡΠ° Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ ΡΠ΅ΠΆΠΈΠΌ PREEMPT, ΠΊΠΎΠΉΡΠΎ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡ Π·Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΡΡΠ΅Π΄ΠΈ, Π·Π° ΡΠΌΠ΅ΡΠΊΠ° Π½Π° Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΠ΅Π»Π½Π°ΡΠ° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ, ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡ Π΄Π° ΡΠ΅ Π²ΡΡΠ½Π°Ρ Π½Π° ΡΠ΅ΠΆΠΈΠΌΠΈΡΠ΅ PREEMPT_VOLUNTARY (ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π·Π° ΡΠ°Π±ΠΎΡΠ½ΠΈ ΡΡΠ΅Π΄ΠΈ) ΠΈΠ»ΠΈ PREEMPT_NONE (ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΠ΅Π»Π½Π° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ Π·Π° ΡΡΡΠ²ΡΡΠΈ).
- Π ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° BPF Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π°ΡΠΎΠΌΠ°ΡΠ½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ BPF_ADD, BPF_AND, BPF_OR, BPF_XOR, BPF_XCHG ΠΈ BPF_CMPXCHG.
- BPF ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡ Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π΄Π°Π½Π½ΠΈ Π² ΡΡΠ΅ΠΊΠ° ΡΡΠ΅Π· ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Ρ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΎ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΠΎ ΠΏΡΠ΅Π΄ΠΈ Π΄ΠΎΡΡΡΠΏΡΡ Π΄ΠΎ ΠΌΠ°ΡΠΈΠ² Π² ΡΡΠ΅ΠΊΠ° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΠ°ΠΌΠΎ Ρ ΠΏΠΎΡΡΠΎΡΠ½Π΅Π½ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠ°, ΡΠ΅Π³Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ². ΠΠΎΠ½ΡΡΠΎΠ»ΡΡ Π½Π°Π΄ Π΄ΠΎΡΡΡΠΏΠ° Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π½Π°Π»ΠΈΡΠ½ΠΈΡΠ΅ Π³ΡΠ°Π½ΠΈΡΠΈ ΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° ΠΎΡ BPF Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΅ Π½Π°Π»ΠΈΡΠ½Π° ΡΠ°ΠΌΠΎ Π·Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΏΠΎΡΠ°Π΄ΠΈ ΠΎΠΏΠ°ΡΠ΅Π½ΠΈΡ Π·Π° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΡΡΡ ΡΠΏΠ΅ΠΊΡΠ»Π°ΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ΄Π°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ Π½Π° BPF ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΡΠΌ "Π³ΠΎΠ»ΠΈ" ΡΠΎΡΠΊΠΈ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ (bare tracepoints), ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π²ΠΈΠ΄ΠΈΠΌΠΈ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΡΡΠ±ΠΈΡΠΈΡ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ (Π·Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΡΠΎΡΠΊΠΈ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π΅ Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Π½ΠΎ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ABI).
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΈΠ½Π° CXL 2.0 (Compute Express Link), ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π²ΠΈΡΠΎΠΊΠΎΡΠΊΠΎΡΠΎΡΡΠ½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ CPU ΠΈ ΠΏΠ°ΠΌΠ΅ΡΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΠ½ΡΠ½ΠΈ ΠΏΠ°ΠΌΠ΅ΡΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΊΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ RAM ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½Π° ΠΏΠ°ΠΌΠ΅Ρ, ΡΠ°ΠΊΠ°, ΡΡΠΊΠ°Ρ ΡΠ°Π·ΠΈ ΠΏΠ°ΠΌΠ΅Ρ Π΅ ΡΠ²ΡΡΠ·Π°Π½Π° ΡΡΠ΅Π· ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Π·Π° ΠΏΠ°ΠΌΠ΅Ρ Π² CPU).
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ nvmem Π·Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π΄ΠΎΡΡΡΠΏΠ½ΠΈ ΡΠ°ΠΌΠΎ Π·Π° ΡΡΡΠΌΡΠ΅Ρ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΈ Π·Π° Linux (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, EEPROM ΠΏΠ°ΠΌΠ΅Ρ, ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠ°ΠΌΠΎ Π·Π° ΡΡΡΠΌΡΠ΅ΡΠ°, ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΠΈ, Π΄ΠΎΡΡΡΠΏΠ½ΠΈ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΎ Π² ΡΠ°Π½Π½Π°ΡΠ° ΡΠ°Π·Π° Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅).
- ΠΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠ°Π½Π΅ Β«oprofileΒ», ΠΊΠΎΡΡΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈ Π½ΡΠΆΠ½Π°ΡΠ° ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡ ΠΈ Π±Π΅ΡΠ΅ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Ρ ΠΏΠΎ-ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ perf.
- Π ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π·Π° Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π΅Π½ Π²Ρ ΠΎΠ΄/ΠΈΠ·Ρ ΠΎΠ΄ io_uring Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ cgroup, ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°ΡΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°.
- ΠΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° RISC-V Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° NUMA ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° kprobes ΠΈ uprobes.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ΅Π½ ΠΏΠΎΠ²ΠΈΠΊ kcmp() Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΡΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ (checkpoint/restore).
- ΠΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ ΡΠ° ΠΌΠ°ΠΊΡΠΎΡΠΈΡΠ΅ EXPORT_UNUSED_SYMBOL() ΠΈ EXPORT_SYMBOL_GPL_FUTURE(), ΠΊΠΎΠΈΡΠΎ Π²Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°.
- ΠΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡΡ Π·Π° Π·Π°ΡΠΈΡΠ° KFence (Kernel Electric Fence), ΠΊΠΎΠΉΡΠΎ ΠΎΡΠΊΡΠΈΠ²Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΡΠ°ΠΊΠΈΠ²Π° ΠΊΠ°ΡΠΎ ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ Π½Π° Π±ΡΡΠ΅ΡΠ° ΠΈ Π΄ΠΎΡΡΡΠΏ ΡΠ»Π΅Π΄ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΎΡΠ»Π°Π΄ΡΡΠ½ΠΈΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ KASAN, ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° KFence ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ Π²ΠΈΡΠΎΠΊΠ° ΡΠΊΠΎΡΠΎΡΡ Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΈ Π½ΠΈΡΠΊΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π² ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠΎΡΠ²ΡΠ²Π°Ρ ΡΠ°ΠΌΠΎ Π² ΡΠ°Π±ΠΎΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½Π° ΡΠ°Π±ΠΎΡΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° ACRN, ΡΡΠ·Π΄Π°Π΄Π΅Π½ Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΡΠΌ Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Π·Π°Π΄Π°ΡΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΠΎΡΡΡΠ° ΠΌΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² ΠΊΡΠΈΡΠΈΡΠ½ΠΎ Π²Π°ΠΆΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. ACRN ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ, Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π½ΠΈΡΠΊΠΈ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡ (low latency) ΠΈ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½Π° ΡΠ΅Π°ΠΊΡΠΈΡ ΠΏΡΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΎΠ±ΠΎΡΡΠ΄Π²Π°Π½Π΅ΡΠΎ. ΠΠΎΠ΄Π΄ΡΡΠΆΠ° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ CPU, Π²Ρ ΠΎΠ΄/ΠΈΠ·Ρ ΠΎΠ΄, ΠΌΡΠ΅ΠΆΠΎΠ²Π° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π³ΡΠ°ΡΠΈΠΊΠ° ΠΈ Π·Π²ΡΠΊ. ACRN ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Π² Π΅Π»Π΅ΠΊΡΡΠΎΠ½Π½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅, ΡΠ°Π±Π»Π° Π½Π° ΠΏΡΠΈΠ±ΠΎΡΠΈΡΠ΅, Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ IoT ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ Π΄ΡΡΠ³Π° Π²Π³ΡΠ°Π΄Π΅Π½Π° ΡΠ΅Ρ Π½ΠΈΠΊΠ°. ACRN ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π΄Π²Π° ΡΠΈΠΏΠ° Π½Π° Ρ ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΠΈ β ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈ Service VM, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° (CPU, ΠΏΠ°ΠΌΠ΅Ρ, Π²Ρ ΠΎΠ΄/ΠΈΠ·Ρ ΠΎΠ΄ ΠΈ Ρ.Π½.), ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ User VM, Π² ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΡΡΠ°ΡΡΠΈΡΠ°Π½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux, Android ΠΈ Windows.
- Π ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° IMA (Integrity Measurement Architecture), ΠΊΠΎΡΡΠΎ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π΅ Π½Π° Π±Π°Π·Π° Ρ Π΅ΡΠΎΠ²Π΅ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΠΈ ΡΠ²ΡΡΠ·Π°Π½ΠΈΡΠ΅ Ρ ΡΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ, ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π° ΡΠ°ΠΌΠΎΡΠΎ ΡΠ΄ΡΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π½Π° SELinux.
- Π Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° KVM Π±Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΈΡ Π²Π°ΡΠ°Π½Π΅ Π½Π° Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ½ΠΈ ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ Xen ΠΈ ΡΡΡ Π½ΠΎΡΠΎ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ ΠΊΡΠΌ Π΅ΠΌΡΠ»Π°ΡΠΎΡ, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π±ΠΎΡΠΈ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Linux ΠΊΠ°ΡΠΎ ΠΊΠΎΡΠ΅Π½ΠΎΠ²Π° ΡΡΠ΅Π΄Π° Π·Π° Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° Hyper-V. ΠΠΎΡΠ΅Π½ΠΎΠ²Π°ΡΠ° ΡΡΠ΅Π΄Π° ΠΈΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Ρ Π°ΡΠ΄ΡΠ΅ΡΠ° ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π³ΠΎΡΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ (Π°Π½Π°Π»ΠΎΠ³ Π½Π° Dom0 Π² Xen). ΠΠΎΡΠ΅Π³Π° Hyper-V (Microsoft Hypervisor) ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ Linux ΡΠ°ΠΌΠΎ Π² Π³ΠΎΡΡΠΎΠ²ΠΈ ΡΡΠ΅Π΄ΠΈ, Π½ΠΎ ΡΠ°ΠΌΠΈΡΡ Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ ΠΎΡ ΡΡΠ΅Π΄Π° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Windows.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° inline ΡΠΈΡΡΠΎΠ²Π°Π½Π΅ Π·Π° ΠΊΠ°ΡΡΠΈ eMMC, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΡΠΈΡΡΠΎΠ²Π°Π½Π΅ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠ° Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎ ΡΠΈΡΡΠΎΠ²Π°Π½Π΅ ΠΈ ΡΠ°Π·ΡΠΈΡΡΠΎΠ²Π°Π½Π΅ Π½Π° Π²Ρ ΠΎΠ΄Π°/ΠΈΠ·Ρ ΠΎΠ΄Π°.
- ΠΡ ΠΊΡΠΈΠΏΡΠΎΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² ΡΠ΄ΡΠΎΡΠΎ Ρ Π΅ΡΠΎΠ²Π΅ RIPE-MD 128/256/320 ΠΈ Tiger 128/160/192, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π½Π° ΠΏΠΎΡΠΎΡΠ½ΠΈΡ ΡΠΈΡΡΡ Salsa20, ΠΊΠΎΠΉΡΠΎ Π΅ Π·Π°ΠΌΠ΅Π½Π΅Π½ ΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° ChaCha20. ΠΠ»Π³ΠΎΡΠΈΡΡΠΌΡΡ blake2 Π΅ ΠΎΠ±Π½ΠΎΠ²Π΅Π½ Π΄ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ blake2s.
- ΠΡΠ΅ΠΆΠΎΠ²Π° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π° NAPI ΠΏΠΎΠ»ΠΈΠ½Π³ (polling) Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² ΠΎΡΠ΄Π΅Π»Π΅Π½ ΡΠ΄ΡΠ΅Π½ ΠΏΠΎΡΠΎΠΊ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½ΠΈΡ. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΠΏΠΎΠ»ΠΈΠ½Π³ΡΡ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° softirq ΠΈ Π½Π΅ Π±Π΅ΡΠ΅ ΠΎΠ±Ρ Π²Π°Π½Π°Ρ ΠΎΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π½Π° Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ²Π°ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ΅ΡΠΈΠ·Π½ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ. ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π² ΠΎΡΠ΄Π΅Π»Π΅Π½ ΡΠ΄ΡΠ΅Π½ ΠΏΠΎΡΠΎΠΊ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π° ΠΏΠΎΠ»ΠΈΠ½Π³Π° ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ ΠΊΡΠΌ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠ΄ΡΠ° Π½Π° CPU ΠΈ Π²Π·Π΅ΠΌΠ°Π½Π΅ ΠΏΠΎΠ΄ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½ΠΈΡ Π½Π° Π·Π°Π΄Π°ΡΠΈ. ΠΠ° Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²ΠΈΡ ΡΠ΅ΠΆΠΈΠΌ Π² sysfs Π΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ /sys/class/net//threaded.
- ΠΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΡΠ° Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° MPTCP (MultiPath TCP), ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° TCP Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° TCP-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΌΠ°ΡΡΡΡΡΠ° ΡΡΠ΅Π· ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΠΊΡΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ IP-Π°Π΄ΡΠ΅ΡΠΈ. Π Π½ΠΎΠ²ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΡΠΈΠΊΡΠ΅ΠΏΡΠ½Π΅ Π½Π° ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΊΡΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΏΠΎΡΠΎΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΏΠΎΡΠΎΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΡΠ°ΠΌΠΎ ΠΏΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡ ΠΏΠΎΡΠΎΠΊ.
- Π IGMPv3 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° EHT (Explicit Host Tracking).
- Π ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ netfilter Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ, Π·Π° Π΄Π° ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈ Π΅ΠΊΡΠΊΠ»ΡΠ·ΠΈΠ²Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΠΌΠ΅ΠΆΠ΄ΡΡΠ΅ΡΠ΅Π²ΠΈΡ Π΅ΠΊΡΠ°Π½ ΠΌΠΎΠΆΠ΅ Π΄Π° Π·Π°ΠΊΠ»ΡΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ, Π·Π°Π±ΡΠ°Π½ΡΠ²Π°ΠΉΠΊΠΈ Π½Π° Π΄ΡΡΠ³ΠΈ Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠ²Π°Ρ Π² ΡΡΡ ).
- ΠΠ±ΠΎΡΡΠ΄Π²Π°Π½Π΅
- ΠΠ·Π²ΡΡΡΠ΅Π½ΠΎ Π΅ ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΠΈ Π½Π΅ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈ ARM ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ. ΠΡΠ΅ΠΌΠ°Ρ Π½Π°Ρ Π΅ ΠΊΠΎΠ΄ΡΡ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈΡΠ΅ efm32, picoxcell, prima2, tango, u300, zx ΠΈ c6x, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠ²ΡΡΠ·Π°Π½ΠΈΡΠ΅ Ρ ΡΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ.
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° amdgpu Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΎΠ²ΡΡΠΊΠ»ΠΎΠΊΠ²Π°Π½Π΅ (OverDrive) Π½Π° ΠΊΠ°ΡΡΠΈ Ρ GPU Sienna Cichlid (Navi 22, Radeon RX 6xxx). ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΠΈΠΊΡΠ΅Π»Π½ΠΈΡ ΡΠΎΡΠΌΠ°Ρ FP16 Π·Π° DCE (display controller engine) ΠΎΡ 8 Π΄ΠΎ 11 ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅. ΠΠ° GPU Navy Flounder (Navi 21) ΠΈ APU Van Gogh Π΅ Π²Π½Π΅Π΄ΡΠ΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π½ΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° GPU.
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° i915 Π·Π° Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠΈ Intel Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ i915.mitigations Π·Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈΡΠ΅ Π·Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½Π΅ ΠΈ Π·Π°ΡΠΈΡΠ° Π² ΠΏΠΎΠ»Π·Π° Π½Π° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°. ΠΠ° ΡΠΈΠΏΠΎΠ²Π΅ΡΠ΅, Π·Π°ΠΏΠΎΡΠ²Π°ΡΠΈ ΠΎΡ Tiger Lake, Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° VRR (Variable Rate Refresh), ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π°Π΄Π°ΠΏΡΠΈΠ²Π½Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΡΠ΅ΡΡΠΎΡΠ°ΡΠ° Π½Π° ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° Π·Π° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠ»Π°Π²Π½ΠΎΡΡ ΠΈ Π»ΠΈΠΏΡΠ° Π½Π° Π·Π°Π·Π΄ΡΠ°Π²ΡΠ²Π°Π½ΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ³ΡΠΈ. ΠΠΊΠ»ΡΡΠ΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡΠ° Intel Clear Color Π·Π° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠΎΡΠ½ΠΎΡΡΡΠ° Π½Π° ΡΠ²Π΅ΡΠΎΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ΡΠΎ. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° DP-HDMI 2.1. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠ°ΡΠ° Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈΡΠ΅ eDP. ΠΠ° GPU Gen9 Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° LSPCON (Level Shifter and Protocol Converter) Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° HDR.
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° nouveau Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° GPU NVIDIA Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° GA100 (Ampere).
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° msm Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° GPU Adreno 508, 509 ΠΈ 512, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² ΡΠΈΠΏΠΎΠ²Π΅ΡΠ΅ SDM (Snapdragon) 630, 636 ΠΈ 660.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π·Π²ΡΠΊΠΎΠ²ΠΈ ΠΊΠ°ΡΡΠΈ Sound BlasterX AE-5 Plus, Lexicon I-ONIX FW810s ΠΈ Pioneer DJM-750. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π·Π²ΡΠΊΠΎΠ²Π°ΡΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Intel Alder Lake PCH-P. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΎΡΡΡΠ΅ΡΠ½Π° ΡΠΈΠΌΡΠ»Π°ΡΠΈΡ Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΠΈ ΠΎΡΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° Π°ΡΠ΄ΠΈΠΎΡΠ°Π·ΡΠ΅ΠΌΠ° Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠ³ΡΠ°Π»Π½ΠΈ ΠΊΠΎΠ½Π·ΠΎΠ»ΠΈ Nintendo 64, ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈ ΠΎΡ 1996 Π΄ΠΎ 2003 Π³ΠΎΠ΄ΠΈΠ½Π° (ΠΏΠΎΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΈΡΠ΅ ΠΎΠΏΠΈΡΠΈ Π·Π° ΠΏΠΎΡΡΠ²Π°Π½Π΅ Π½Π° Linux Π·Π° Nintendo 64 Π½Π΅ ΡΠ° Π±ΠΈΠ»ΠΈ Π·Π°Π²ΡΡΡΠ΅Π½ΠΈ ΠΈ ΠΈΠΌΠ°Ρ ΡΡΠ°ΡΡΡ Vaporware). ΠΠ°ΡΠΎ ΠΌΠΎΡΠΈΠ² Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ² ΠΏΠΎΡΡ Π·Π° ΠΎΡΡΠ°ΡΡΠ»Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°, ΠΊΠΎΡΡΠΎ Π½Π΅ ΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΠΎΡ ΠΏΠΎΡΡΠΈ Π΄Π²Π°Π΄Π΅ΡΠ΅Ρ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π΅ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΡΠΎ Π΄Π° ΡΠ΅ ΡΡΠΈΠΌΡΠ»ΠΈΡΠ° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π΅ΠΌΡΠ»Π°ΡΠΎΡΠΈΡΠ΅ ΠΈ ΠΎΠΏΡΠΎΡΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π½ΠΎΡΠ° Π½Π° ΠΈΠ³ΡΠΈ.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π·Π° ΠΈΠ³ΡΠ°Π»Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Sony PlayStation 5 DualSense.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ARM ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ, ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ: PineTab, Snapdragon 888 / SM8350, Snapdragon MTP, Two Beacon EmbeddedWorks, Intel eASIC N5X, Netgear R8000P, Plymovent M2M, Beacon i.MX8M Nano, NanoPi M4B.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΌΠ°ΡΡΡΠΎΠ½ΠΈ Purism Librem5 Evergreen, Xperia Z3+/Z4/Z5, ASUS Zenfone 2 Laser, BQ Aquaris X5, OnePlus6, OnePlus6T, Samsung GT-I9070.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π΄ΡΠ°ΠΉΠ²Π΅Ρ bcm-vk Π·Π° ΠΏΠ»Π°ΡΠΊΠΈ-ΡΡΠΊΠΎΡΠΈΡΠ΅Π»ΠΈ Broadcom VK (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, PCIe ΠΏΠ»Π°ΡΠΊΠΈ Valkyrie ΠΈ Viper), ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π° ΠΎΡΠ΄Π΅Π»Π½ΠΎ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π·Π²ΡΠΊ, Π²ΠΈΠ΄Π΅ΠΎ ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Lenovo IdeaPad Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠΎΡΠ½Π΅Π½ Π·Π°ΡΡΠ΄ ΠΈ ΠΎΡΠ²Π΅ΡΠ»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°ΡΠ°. Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ACPI ΠΏΡΠΎΡΠΈΠ»Π° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° ThinkPad Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΠΆΠΈΠΌΠΈΡΠ΅ Π½Π° Π΅Π½Π΅ΡΠ³ΠΈΠΉΠ½Π° ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡ. ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π·Π° HID ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π½Π° Lenovo ThinkPad X1 Tablet Gen 2.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ov5647 Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ»Π° Ρ ΠΊΠ°ΠΌΠ΅ΡΠ° Π·Π° Raspberry Pi.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° RISC-V SoC FU740 ΠΈ ΠΏΠ»Π°ΡΠΊΠ°ΡΠ° HiFive Unleashed. Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π½ΠΎΠ² Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π·Π° ΡΠΈΠΏΠ° Kendryte K210.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
