Π‘Π»Π΅Π΄ Π΄Π²Π° ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΠΈΠ½ΡΡ Π’ΠΎΡΠ²Π°Π»Π΄Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈ Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° Linux ΡΠ΄ΡΠΎΡΠΎ 5.12. Π‘ΡΠ΅Π΄ Π½Π°ΠΉ-Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ: ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π·ΠΎΠ½ΠΈΡΠ°Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² Btrfs, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΏΠΎΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° Π½Π°ΡΠ»Π΅Π΄Π΅Π½ΠΈ ARM Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ, βΠ½Π΅ΡΡΡΠΏΠ΅Π»ΠΈΠ²β ΡΠ΅ΠΆΠΈΠΌ Π½Π° Π·Π°ΠΏΠΈΡ Π² NFS, ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡΡ LOOKUP_CACHED Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΠΏΡΡΠΈΡΠ° ΠΎΡ ΠΊΠ΅ΡΠ° , ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π°ΡΠΎΠΌΠ°ΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π² BPF, ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ KFENCE Π·Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΠ°ΠΌΠ΅Ρ, ΡΠ΅ΠΆΠΈΠΌ Π½Π° Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° NAPI, ΡΠ°Π±ΠΎΡΠ΅Ρ Π² ΠΎΡΠ΄Π΅Π»Π½Π° Π½ΠΈΡΠΊΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π² ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ ΡΡΠ΅ΠΊ, ACRN Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΠΌΠΎΠ΄Π΅Π»Π° Π·Π° ΠΈΠ·ΠΏΡΠ΅Π²Π°ΡΠ²Π°Π½Π΅ Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π² Π·Π°Π΄Π°ΡΠ°ΡΠ° ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° LTO ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΈ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π² Clang.
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π²ΠΊΠ»ΡΡΠ²Π° 14170 (Π² ΠΏΡΠ΅Π΄ΠΈΡΠ½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ 15480) ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈ ΠΎΡ 1946 (1991) ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΡΡΠ° Π΅ 38 MB (ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π·Π°ΡΡΠ³Π°Ρ 12102 (12090) ΡΠ°ΠΉΠ»Π°, Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° 538599 (868025) ΡΠ΅Π΄Π° ΠΊΠΎΠ΄, 333377 (261456) ΡΠ΅Π΄ΠΎΠ²Π΅ΡΠ΅ Π±ΡΡ Π° ΠΈΠ·ΡΡΠΈΡΠΈ). ΠΠΊΠΎΠ»ΠΎ 43% ΠΎΡ Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ, Π²ΡΠ²Π΅Π΄Π΅Π½ΠΈ Π² 5.12, ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ 17% ΠΎΡ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠΎΠ΄, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅Π½ Π·Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ, 12% ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΌΡΠ΅ΠΆΠΎΠ² ΡΡΠ΅ΠΊ, 5% ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈ 4% ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π²ΡΡΡΠ΅ΡΠ½ΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ.
ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈ:
- ΠΠΈΡΠΊΠΎΠ²Π° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°, I/O ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ
- ΠΡΠ²Π΅Π΄Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ Π·Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ (ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°ΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° Π΅Π΄ΠΈΠ½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π½Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ ΡΡΠΆΠ΄ Π΄ΡΠ» Ρ Π΄ΡΡΠ³ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π² ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°). ΠΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ΡΠΎ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ FAT, ext4 ΠΈ XFS. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΡΠ»Π΅ΡΠ½ΡΠ²Π° ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ ΡΠ΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΠΏΡΠ΅Π½ΠΎΡΠΈΠΌΠ° Π΄ΠΎΠΌΠ°ΡΠ½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ systemd-homed, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π΄Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Ρ ΡΠ²ΠΎΠΈΡΠ΅ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π½Π° Π²ΡΠ½ΡΠ΅Π½ Π½ΠΎΡΠΈΡΠ΅Π» ΠΈ Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠΈ, ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ, Π½Π° ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΡΠ²ΠΏΠ°Π΄Π°. ΠΡΡΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ΡΠΎ Π½Π° ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ Π²ΡΠ½ΡΠ΅Π½ Ρ ΠΎΡΡ, Π±Π΅Π· Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΡΡ Π΄Π°Π½Π½ΠΈΡΠ΅ Π·Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΡΠΈΡΠ΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°.
- ΠΠ°ΡΠΎΠ²Π΅ΡΠ΅ LOOKUP_CACHED ΡΠ° Π²ΡΠ²Π΅Π΄Π΅Π½ΠΈ Π² ΡΠ΄ΡΠΎΡΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΡ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅, ΡΠ°ΠΌΠΎ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅, Π½Π°Π»ΠΈΡΠ½ΠΈ Π² ΠΊΠ΅ΡΠ°. Π Π΅ΠΆΠΈΠΌΡΡ LOOKUP_CACHED ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° Π² ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ openat2() ΡΡΠ΅Π· ΠΏΠΎΠ΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ»Π°Π³Π° RESOLVE_CACHED, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠ²Π°Ρ ΡΠ°ΠΌΠΎ ΠΎΡ ΠΊΠ΅ΡΠ° ΠΈ Π°ΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΠΏΡΡΡ ΠΈΠ·ΠΈΡΠΊΠ²Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ, ΡΠ΅ Π²ΡΡΡΠ° Π³ΡΠ΅ΡΠΊΠ°ΡΠ° EAGAIN.
- Π€Π°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Btrfs Π΄ΠΎΠ±Π°Π²ΠΈ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π·ΠΎΠ½ΠΈΡΠ°Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π° ΡΠ²ΡΡΠ΄ΠΈ ΠΌΠ°Π³Π½ΠΈΡΠ½ΠΈ Π΄ΠΈΡΠΊΠΎΠ²Π΅ ΠΈΠ»ΠΈ NVMe SSD, ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅, Π² ΠΊΠΎΠ΅ΡΠΎ Π΅ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΎ Π½Π° Π·ΠΎΠ½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΡΡΡΠ°Π²Π»ΡΠ²Π°Ρ Π³ΡΡΠΏΠΈ ΠΎΡ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΈΠ»ΠΈ ΡΠ΅ΠΊΡΠΎΡΠΈ, ΠΊΡΠΌ ΠΊΠΎΠΈΡΠΎ Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠ°ΠΌΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ, Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ»Π°ΡΠ° Π³ΡΡΠΏΠ° ΠΎΡ Π±Π»ΠΎΠΊΠΎΠ²Π΅). Π ΡΠ΅ΠΆΠΈΠΌ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΈ ΠΎΡ ΡΡΡΠ°Π½ΠΈΡΠ° (ΠΏΠΎΠ΄ΡΡΡΠ°Π½ΠΈΡΠ°).
- ΠΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° 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 Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Π³ΡΠ°Π΄Π΅Π½ΠΎ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π·Π° ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΡ Π΄ΡΡΠ³ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡΡ ΠΊΠΎΠ΄ Π½Π΅ ΡΠ΅ Π²ΠΊΠ»ΡΡΠ²Π° Π² ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈΡ ΡΠ°ΠΉΠ», ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°ΡΠ° Π½Π° ΡΠΈΠΏΠ° ΠΈ ΠΎΠ±ΡΠ°ΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ Π½Π° Π½ΠΈΠ²ΠΎ ΠΏΡΠΎΠ΅ΠΊΡ ΠΊΠ°ΡΠΎ ΡΡΠ»ΠΎ. ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° 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 ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΡΠΌ Π³ΠΎΠ»ΠΈ ΡΠΎΡΠΊΠΈ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΡΡΡ ΡΡΠ±ΠΈΡΠΈΡ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅, Π²ΠΈΠ΄ΠΈΠΌΠΈ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ (Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ABI Π½Π΅ Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Π½ΠΎ Π·Π° ΡΠ°ΠΊΠΈΠ²Π° ΡΠΎΡΠΊΠΈ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅).
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΈΠ½Π°ΡΠ° CXL 2.0 (Compute Express Link), ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΠΈΡΠΎΠΊΠΎΡΠΊΠΎΡΠΎΡΡΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ° ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΡΠ° Ρ ΠΏΠ°ΠΌΠ΅Ρ (ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π²ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Ρ Π²ΡΠ½ΡΠ½Π° ΠΏΠ°ΠΌΠ΅Ρ ΠΊΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ RAM ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½Π° ΠΏΠ°ΠΌΠ΅Ρ, ΡΡΠΊΠ°Ρ ΡΠ°Π·ΠΈ ΠΏΠ°ΠΌΠ΅Ρ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΡΡΠ΅Π· ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π² ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ°).
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π΄ΡΠ°ΠΉΠ²Π΅Ρ nvmem Π·Π° ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΎΠ±Π»Π°ΡΡΠΈ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π·Π°ΠΏΠ°Π·Π΅Π½ΠΈ ΠΎΡ ΡΡΡΠΌΡΠ΅ΡΠ°, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΈ Π·Π° Linux (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ EEPROM ΠΏΠ°ΠΌΠ΅Ρ, ΠΊΠΎΡΡΠΎ Π΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠ°ΠΌΠΎ Π·Π° ΡΡΡΠΌΡΠ΅ΡΠ°, ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° Π΄ΠΎΡΡΡΠΏΠ½ΠΈ ΡΠ°ΠΌΠΎ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ°Π½Π½Π°ΡΠ° ΡΠ°Π·Π° Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅).
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠ°Π½Π΅ βoprofileβ Π΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ°, ΠΊΠΎΡΡΠΎ Π½Π΅ Π±Π΅ΡΠ΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΈ Π±Π΅ΡΠ΅ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° ΠΎΡ ΠΏΠΎ-ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΡ perf ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ.
- ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΈΡΡ I/O ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ io_uring ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ cgroups, ΠΊΠΎΠΈΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°.
- ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° RISC-V ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° NUMA ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ kprobes ΠΈ uprobes.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΡΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ kcmp() Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΌΠΎΠΌΠ΅Π½ΡΠ½ΠΈΡΠ΅ ΡΠ½ΠΈΠΌΠΊΠΈ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠ° (ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π° ΡΠΎΡΠΊΠ°/Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅).
- ΠΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ ΡΠ° ΠΌΠ°ΠΊΡΠΎΡΠΈΡΠ΅ EXPORT_UNUSED_SYMBOL() ΠΈ EXPORT_SYMBOL_GPL_FUTURE(), ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ.
- ΠΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ
- ΠΠΎΠ±Π°Π²Π΅Π½ Π·Π°ΡΠΈΡΠ΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ KFence (Kernel Electric Fence), ΠΊΠΎΠΉΡΠΎ ΡΠ»Π°Π²Ρ Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΠ°ΠΌΠ΅Ρ, ΠΊΠ°ΡΠΎ ΠΏΡΠ΅ΠΏΡΠ»Π²Π°Π½Π΅ Π½Π° Π±ΡΡΠ΅Ρ ΠΈ Π΄ΠΎΡΡΡΠΏ ΡΠ»Π΅Π΄ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ. ΠΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ KASAN, ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° KFence ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΠΈΡΠ° Ρ Π²ΠΈΡΠΎΠΊΠ° ΡΠΊΠΎΡΠΎΡΡ Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΈ Π½ΠΈΡΠΊΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ»Π°Π²ΡΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ ΡΠ°ΠΌΠΎ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½Π° ΡΠ°Π±ΠΎΡΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Ρ ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡΠ° ACRN, Π½Π°ΠΏΠΈΡΠ°Π½ Ρ ΠΎΠ³Π»Π΅Π΄ Π½Π° Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡ Π·Π° Π·Π°Π΄Π°ΡΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² ΠΊΡΠΈΡΠΈΡΠ½ΠΈ Π·Π° ΠΌΠΈΡΠΈΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠΈ. ACRN ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ, Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π½ΠΈΡΠΊΠ° Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡ ΠΈ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½Π° ΡΠ΅Π°ΠΊΡΠΈΡ ΠΏΡΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΎΠ±ΠΎΡΡΠ΄Π²Π°Π½Π΅ΡΠΎ. ΠΠΎΠ΄Π΄ΡΡΠΆΠ° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° CPU ΡΠ΅ΡΡΡΡΠΈ, I/O, ΠΌΡΠ΅ΠΆΠΎΠ²Π° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°, Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈ Π·Π²ΡΠΊΠΎΠ²ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. ACRN ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Π² Π΅Π»Π΅ΠΊΡΡΠΎΠ½Π½ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅, Π°ΡΠΌΠ°ΡΡΡΠ½ΠΈ ΡΠ°Π±Π»Π°, Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ IoT ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ Π΄ΡΡΠ³ΠΈ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ACRN ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π΄Π²Π° ΡΠΈΠΏΠ° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π³ΠΎΡΡΠΈ - ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈ ΡΠ΅ΡΠ²ΠΈΠ·Π½ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ (CPU, ΠΏΠ°ΠΌΠ΅Ρ, I/O ΠΈ Ρ.Π½.), ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ Linux, Android ΠΈ Windows Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ.
- Π ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° IMA (Integrity Measurement Architecture), ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Ρ Π΅Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΠΈ ΡΠ²ΡΡΠ·Π°Π½ΠΈΡΠ΅ Ρ ΡΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ, Π²Π΅ΡΠ΅ ΡΡΠ°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈ ΡΠ΅Π»ΠΎΡΡΡΠ° Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π° ΡΠ°ΠΌΠΎΡΠΎ ΡΠ΄ΡΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π² ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π½Π° SELinux .
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΡΠΈΡ Π²Π°ΡΠ°Π½Π΅ Π½Π° Xen Ρ ΠΈΠΏΠ΅ΡΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Π½Π΅ΡΠΎ ΠΈΠΌ ΠΊΡΠΌ Π΅ΠΌΡΠ»Π°ΡΠΎΡΠ°, ΡΠ°Π±ΠΎΡΠ΅Ρ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΊΡΠΌ KVM Ρ ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Linux ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π° ΡΡΠ΅Π΄Π° Π·Π° Ρ ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡΠ° Hyper-V. ΠΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΡΠ΅Π΄Π° ΠΈΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Ρ Π°ΡΠ΄ΡΠ΅ΡΠ° ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π³ΠΎΡΡΠΈ (Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π½Π° Dom0 Π² Xen). ΠΠΎΡΠ΅Π³Π° Hyper-V (Microsoft Hypervisor) ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ Linux ΡΠ°ΠΌΠΎ Π² ΡΡΠ΅Π΄ΠΈ Π·Π° Π³ΠΎΡΡΠΈ, Π½ΠΎ ΡΠ°ΠΌΠΈΡΡ Ρ ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ ΠΎΡ ΡΡΠ΅Π΄Π°, Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° Windows.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π²Π³ΡΠ°Π΄Π΅Π½ΠΎ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ Π·Π° eMMC ΠΊΠ°ΡΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅, Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠ° Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎ ΠΊΡΠΈΠΏΡΠΈΡΠ°Ρ ΠΈ Π΄Π΅ΠΊΡΠΈΠΏΡΠΈΡΠ°Ρ I/O.
- ΠΡ ΠΊΡΠΈΠΏΡΠΎ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΠ»Π³ΠΎΡΠΈΡΡΠΌΡΡ blake128 Π΅ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ Π·Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° blake256s.
- ΠΡΠ΅ΠΆΠΎΠ²Π° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠ° Π·Π° Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° NAPI Π·Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΊΡΠΌ ΠΎΡΠ΄Π΅Π»Π½Π° Π½ΠΈΡΠΊΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π·Π° Π½ΡΠΊΠΎΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° Π°Π½ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° softirq ΠΈ Π½Π΅ ΡΠ΅ ΠΏΠΎΠΊΡΠΈΠ²Π°ΡΠ΅ ΠΎΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π½Π° Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ²Π°ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΠ½ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ. ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π² ΠΎΡΠ΄Π΅Π»Π½Π° Π½ΠΈΡΠΊΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΡΡ Π½Π° Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π΄Π° Π±ΡΠ΄Π΅ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Π½ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ΅Π½ ΠΊΡΠΌ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½ΠΈ ΡΠ΄ΡΠ° ΠΈ Π²Π·Π΅Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΠΏΡΠΈ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° Π·Π°Π΄Π°ΡΠΈ. ΠΠ° Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ Π½ΠΎΠ²ΠΈΡ ΡΠ΅ΠΆΠΈΠΌ Π² sysfs, ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΡΡ /sys/class/net/ /Ρ ΡΠ΅Π·Π±Π°.
- ΠΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π΅ Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° 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 (ΠΌΠΎΠ½ΠΈΡΠΎΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠ° Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Ρ) ΠΎΡ 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 (ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°ΡΠ΅Π» Π½Π° Π½ΠΈΠ²ΠΎ ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°ΡΠ΅Π» Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ), ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° HDR Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π°.
- ΠΡΠ°ΠΉΠ²Π΅ΡΡΡ nouveau Π΄ΠΎΠ±Π°Π²Ρ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° NVIDIA GPU, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° GA100 (Ampere).
- ΠΡΠ°ΠΉΠ²Π΅ΡΡΡ msm Π΄ΠΎΠ±Π°Π²Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π³ΡΠ°ΡΠΈΡΠ½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ 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 (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠ»Π°ΡΠΊΠΈ Valkyrie ΠΈ Viper PCIe), ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π° ΡΠ°Π·ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π°ΡΠ΄ΠΈΠΎ, Π²ΠΈΠ΄Π΅ΠΎ ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅, Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Lenovo IdeaPad Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠ° Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°ΡΠ°. ΠΡΠΈΠ³ΡΡΠ΅Π½Π° Π΅ ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ACPI ΠΏΡΠΎΡΠΈΠ»Π° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° ThinkPad Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΠΆΠΈΠΌΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡ Π½Π° Π΅Π½Π΅ΡΠ³ΠΈΡ. ΠΠΎΠ±Π°Π²Π΅Π½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π·Π° Lenovo ThinkPad X1 Tablet Gen 2 HID ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ov5647 Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ» ΠΊΠ°ΠΌΠ΅ΡΠ° Π·Π° Raspberry Pi.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΠ»Π°ΡΠΊΠΈ RISC-V SoC FU740 ΠΈ HiFive Unleashed. ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΈ Π½ΠΎΠ² Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π·Π° ΡΠΈΠΏΠ° Kendryte K210.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru