ΠΠΎΡΠ»Π΅ Π΄Π²ΡΡ ΠΌΠ΅ΡΡΡΠ΅Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠΈΠ½ΡΡ Π’ΠΎΡΠ²Π°Π»ΡΠ΄Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ» ΡΠ΅Π»ΠΈΠ· ΡΠ΄ΡΠ° Linux 6.12. Π‘ΡΠ΅Π΄ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅ΡΠ½ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ: Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Realtime-ΡΠ΅ΠΆΠΈΠΌΠ°, sched_ext Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠ² CPU ΡΠ΅ΡΠ΅Π· eBPF, Π²ΡΠ²ΠΎΠ΄ QR-ΠΊΠΎΠ΄Π° ΠΏΡΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΡ , ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Device Memory TCP, ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² SCHED_DEADLINE server, ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π·Π°Π΄Π°Ρ EEVDF, ΠΌΠΎΠ΄ΡΠ»Ρ IPE Π΄Π»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»ΠΈΡΠΈΠΊ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ.
Π Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΈΠ½ΡΡΠΎ 14607 ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΠΎΡ 2167 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠ°ΡΡΠ° — 37 ΠΠ (ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π°ΡΡΠΎΠ½ΡΠ»ΠΈ 13087 ΡΠ°ΠΉΠ»ΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 507913 ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, ΡΠ΄Π°Π»Π΅Π½ΠΎ 234083 ΡΡΡΠΎΠΊ). Π ΠΏΡΠΎΡΠ»ΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅ Π±ΡΠ»ΠΎ 15130 ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΠΎΡ 2078 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠ°ΡΡΠ° — 85 ΠΠ (Π² ΡΠ΄ΡΠ΅ 6.10 ΠΏΠ°ΡΡ Π±ΡΠ» ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 41 ΠΠ). ΠΠΊΠΎΠ»ΠΎ 45% Π²ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π² 6.12 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠ²ΡΠ·Π°Π½Ρ Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ², ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 12% ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅ΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎΠ³ΠΎ Π΄Π»Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ, 13% ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΡΠ΅Π²ΡΠΌ ΡΡΠ΅ΠΊΠΎΠΌ, 6% — Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΈ 3% c Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΡΠ΄ΡΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π° Π² ΡΠ΄ΡΠ΅ 6.12:
- ΠΠ°ΠΌΡΡΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ΄ΡΠ° Ρ ΠΎΠΏΡΠΈΠ΅ΠΉ PREEMPT_RT Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΎΡΡΡΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π² ΡΠ΄ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ, Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²ΡΠ΅ΠΉ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ PREEMPT_RT, Π±ΡΠ»Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅Π±Π»ΠΎΠΊΠΈΡΡΡΡΠ΅Π³ΠΎ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΡΠ΅Π· ΡΡΠ½ΠΊΡΠΈΡ printk, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ½ΡΡΠ° Π² ΡΠΎΡΡΠ°Π² ΡΠ΄ΡΠ°. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° PREEMPT_RT Π΄ΠΎΡΡΡΠΏΠ½Π° Π΄Π»Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ x86, x86_64, ARM64 ΠΈ RISC-V. ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΠΆΠΈΠΌΠ° PREEMPT_RT ΠΏΠΎΡΡΠ°Π²Π»ΡΠ»Π°ΡΡ Π² ΡΠΎΡΠΌΠ΅ Π²Π½Π΅ΡΠ½ΠΈΡ ΠΏΠ°ΡΡΠ΅ΠΉ, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ RHEL, SUSE ΠΈ Ubuntu, ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Realtime-ΡΠ΅Π΄Π°ΠΊΡΠΈΠΈ ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ², Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΡΠ°ΠΊΠΈΡ ΠΎΠ±Π»Π°ΡΡΡΡ , ΠΊΠ°ΠΊ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π²ΡΠΊΠ° ΠΈ Π²ΠΈΠ΄Π΅ΠΎ, Π°Π²ΠΈΠ°ΡΠΈΡ, ΠΌΠ΅Π΄ΠΈΡΠΈΠ½Π°, ΡΠΎΠ±ΠΎΡΠΎΡΠ΅Ρ Π½ΠΈΠΊΠ°, ΡΠ΅Π»Π΅ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΈ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ, Π² ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ «sched_ext» (SCX), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ eBPF Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠ² CPU, ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² CPU. ΠΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²Π½ΡΡΡΠΈ ΡΠ΄ΡΠ° Linux Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ eBPF. ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ sched_ext ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π·Π°Π΄Π°Ρ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠ², Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΠΌΠΈ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΡΡΡΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΎΡΠΎΡΠΈΠΏΡ ΠΈ Π·Π°ΠΌΠ΅Π½ΡΡΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠΈ Π½Π° Π»Π΅ΡΡ Π² ΡΠ°Π±ΠΎΡΠΈΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°Ρ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ sched_ext ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ, ΡΡΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠ΅Π½ΡΡΡΠΈΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΠΊΠ°ΠΊΠΈΡ -ΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ².
- Π ΡΠΎΡΡΠ°Π² Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΎΡΡΠ°Π²ΡΠ°ΡΡΡ ΡΠ°ΡΡΡ ΠΏΠ°ΡΡΠ΅ΠΉ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° SCHED_DEADLINE server, ΡΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π½Π΅Π΄ΠΎΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΡΡΡΠΎΠ² CPU ΠΎΠ±ΡΡΠ½ΡΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ Π² ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΠΈΠ·Π°ΡΠΈΠΈ CPU Π²ΡΡΠΎΠΊΠΎΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΌΠΈ (realtime) Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ. ΠΠ»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΠΈΠ·Π°ΡΠΈΠΈ CPU Π² ΡΠ΄ΡΠ΅ ΡΠ°Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Realtime throttling, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΡΠ°Π»ΡΡ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°ΡΡ 5% Π΄Π»Ρ Π½ΠΈΠ·ΠΊΠΎΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΡ Π·Π°Π΄Π°Ρ, ΠΎΡΡΠ°Π²Π»ΡΡ 95% Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ realtime-Π·Π°Π΄Π°ΡΠ°ΠΌ. ΠΠ°Π½Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΎΡΡΠ°Π²Π»ΡΠ» ΠΆΠ΅Π»Π°ΡΡ Π»ΡΡΡΠ΅Π³ΠΎ ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ Π½Π΅Π΄ΠΎΠΏΠΎΠ»ΡΡΠ°Π»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. SCHED_DEADLINE server ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ².
- ΠΠ°Π²Π΅ΡΡΠ΅Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π·Π°Π΄Π°Ρ EEVDF (Earliest Eligible Virtual Deadline First), ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΡΡΠ» Π½Π° ΡΠΌΠ΅Π½Ρ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΡ CFS (Completely Fair Scheduler), ΠΏΠΎΡΡΠ°Π²Π»ΡΠ²ΡΠ΅ΠΌΡΡΡ Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΡΠ΄ΡΠ° 2.6.23. ΠΠΎΠ²ΡΠΉ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅Π΄ΠΎΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π½Π΅Π·Π°ΡΠ»ΡΠΆΠ΅Π½Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΎΡΡΠΈΡΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΡ, Π° Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ, Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, ΠΎΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡΡ. Π‘ΡΠ°ΡΡΠΉ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ CFS ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΡΡΠ΅Π±ΡΡΡΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ, ΡΠ²ΡΠΈΡΡΠΈΠΊΡ ΠΈ ΡΠΎΠ½ΠΊΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π½ΠΎΠ²ΡΠΉ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ²Π½ΠΎ ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠΎΠ½ΠΊΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ EEVDF ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠ½ΠΈΠ·ΠΈΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Ρ CFS Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.
- Π ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π°Π²Π°ΡΠΈΠΉΠ½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ Π² ΡΠ΄ΡΠ΅ — DRM Panic, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ DRM (Direct Rendering Manager) Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π°Π³Π»ΡΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΡΡΡΠ° Π² ΡΡΠΈΠ»Π΅ «ΡΠΈΠ½Π΅Π³ΠΎ ΡΠΊΡΠ°Π½Π° ΡΠΌΠ΅ΡΡΠΈ», Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΊΠ°Π·Π° Π½Π° ΡΠΊΡΠ°Π½Π΅ Π»ΠΎΠ³ΠΎΡΠΈΠΏΠ° ΠΈ QR-ΠΊΠΎΠ΄Π° Ρ ΠΎΡΡΡΡΠΎΠΌ kmsg ΠΏΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² QR-ΠΊΠΎΠ΄ ΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ 2953 Π±Π°ΠΉΡ, ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° ΠΎΠΏΡΠΈΡ DRM_PANIC_SCREEN_QR_CODE_URL, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΡΡΡΡ kmsg ΡΠΆΠΈΠΌΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ zlib ΠΈ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΊ URL, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠ΅ΡΠ΅Π· QR-ΠΊΠΎΠ΄ V40 ΠΎΠΊΠΎΠ»ΠΎ 7500 Π±Π°ΠΉΡΠΎΠ². ΠΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Ρ ΡΠ΄ΡΠΎΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ ΠΌΠΎΠ³ΡΡ Π·Π°Π΄Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΡΡΠ»ΠΊΡ Π΄Π»Ρ URL, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅. ΠΠ»Ρ Π²ΡΠ±ΠΎΡΠ° ΡΠΎΡΠΌΠ°ΡΠ° QR-ΠΊΠΎΠ΄Π° ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° DRM_PANIC_SCREEN_QR_VERSION.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ARM POE (Permission Overlay Extension), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΎΠ±Π»Π°ΡΡΡΠΌ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ ARM64 ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Memory Protection Keys, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ ΡΡΡΠ°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ.
- ΠΠ»Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ Loongarch, ARM64, PowerPC ΠΈ s390 ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° getrandom(), ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° vDSO (virtual dynamic shared object), Π΄Π°ΡΡΠ΅Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΠΈΠ· ΡΠ΄ΡΠ° Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°. ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎ 15 ΡΠ°Π· ΡΡΠΊΠΎΡΠΈΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π».
- Π ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π° io_uring Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΡ ΡΠ°ΠΉΠΌΠ°ΡΡΠΎΠ², ΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΠΈΡ ΠΏΡΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠ°ΡΠ°Ρ (ΡΠ°Π½Π΅Π΅ ΠΌΠΎΠ³Π»ΠΈ Π²ΡΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΠΉΠΌΠ°ΡΡΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π»Π°ΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Ρ Π½Π°ΡΠ°Π»Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΡΠ°ΠΉΠ»Ρ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΎΠ² Π΄Π»Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ libcpupower ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ SWIG, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ ΠΈΠ· ΠΊΠΎΠ΄Π° Π½Π° C/C++ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΊΡΠΈΠΏΡΡ Π½Π° Python ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ , ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ libcpupower, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ API Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ cpufreq ΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌΠΈ ΠΈΠ· ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
- Π ΡΡΠΈΠ»ΠΈΡΠ΅ cpuidle ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΎΡΡΠΎΡ «residency», ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ Π΄Π»Ρ realtime-ΡΠΈΡΡΠ΅ΠΌ ΠΈ ΡΡΠΈΡΡΠ²Π°ΡΡΠ΅Π³ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΏΡΠΎΡΡΠΎΡ, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ°Π²Π΄Π°ΡΡ Π·Π°ΡΡΠ°ΡΡ ΡΠ½Π΅ΡΠ³ΠΈΠΈ Π½Π° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π² ΡΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ Π²ΡΡ ΠΎΠ΄ ΠΈΠ· Π½Π΅Π³ΠΎ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Clang Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π‘ΠΈ-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ nolibc, Π²Ρ ΠΎΠ΄ΡΡΠ΅ΠΉ Π² ΡΠΎΡΡΠ°Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ² ΡΠ΄ΡΠ° Linux ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ ΠΎΠ±Π²ΡΠ·ΠΊΡ Π½Π°Π΄ Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌΠΈ Π²ΡΠ·ΠΎΠ²Π°ΠΌΠΈ. ΠΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ nolibc Π² Clang Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ (LTO).
- ΠΠ±ΡΡΠ²Π»Π΅Π½Ρ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ cgroup1, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π°ΠΊΠΊΠ°ΡΠ½ΡΠΈΠ½Π³ TCP, ΠΏΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΌΡΠ³ΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ (soft limit) ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΡΡΠ΅ΡΠΏΠ°Π½ΠΈΠ΅ΠΌ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΏΠΎΠΊΠ° ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ ΠΎΠ±ΡΡΠΌΠ΅, Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊΠΎΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ Π±ΡΡΠ΅ΡΠ° ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π΅ ΡΠ΅ΡΡΡΡ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΠ»ΡΡΠ°Π΅ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ ΡΠ΄ΡΠ°. ΠΠ°Π½Π½ΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ΄ΡΠ° trace_instance, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ «trace_instance=boot_map@0x285400000:12M» Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΡΠ΅Ρ 12 ΠΠ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ 0x285400000 Π΄Π»Ρ Π±ΡΡΠ΅ΡΠ° «boot_map», ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΠ» /sys/kernel/tracing/instances/boot_map.
- ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· Π²Π΅ΡΠΊΠΈ Rust-for-Linux, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ·ΡΠΊΠ° Rust Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² ΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ΄ΡΠ° (ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Rust Π½Π΅ Π°ΠΊΡΠΈΠ²Π½Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΈ Π½Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Rust Π² ΡΠΈΡΠ»ΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠ±ΠΎΡΠΎΡΠ½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΊ ΡΠ΄ΡΡ). ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈ ‘list’ ΠΈ ‘rbtree’ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΌΠΈ ΡΠ²ΡΠ·Π½ΡΠΌΠΈ ΡΠΏΠΈΡΠΊΠ°ΠΌΠΈ ΠΈ ΠΊΡΠ°ΡΠ½ΠΎ-ΡΡΡΠ½ΡΠΌΠΈ Π΄Π΅ΡΠ΅Π²ΡΡΠΌΠΈ ΠΏΠΎΠΈΡΠΊΠ° (red-black tree). Π Π°ΡΡΠΈΡΠ΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ‘init’, ‘sync’, ‘types’ ΠΈ ‘error’. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π½Π° Rust ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ ΡΠ΄ΡΠ° Ρ Π·Π°ΡΠΈΡΠΎΠΉ ΠΎΡ Π°ΡΠ°ΠΊ Spectre (ΠΎΠΏΡΠΈΠΈ MITIGATION_{RETHUNK,RETPOLINE,SLS}), ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ KASAN, ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π·Π°ΡΠΈΡΡ kCFI (kernel Control Flow Integrity) ΠΈ Shadow Call, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² GCC. ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π΄Π»Ρ Ethernet-ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Applied Micro QT2025 PHY, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° Rust. ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ — rust.docs.kernel.org.
- Π ΡΠΎΡΡΠ°Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ² ΡΠ΄ΡΠ° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΡΠΈΠ»ΠΈΡΠ° xdrgen Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ XDR-ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ (eXternal Data Representation) Π² ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ XDR, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π‘ΠΈ-ΡΡΠΈΠ»Ρ, ΠΏΡΠΈΠ½ΡΡΠΎΠ³ΠΎ Π² ΡΠ΄ΡΠ΅ Linux.
- Π ΡΠ΄ΡΠΎ ΠΏΡΠΈΠ½ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π΄Π»Ρ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² barrier_nospec() Π² 64-Π±ΠΈΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ copy_from_user(), ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΉ Π΄Π»Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΄ΡΠΎ ΠΈΠ· ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΊΠΎΡΡΠ΅Ρ Π½Π° 2.6% ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠ° «per_thread_ops», ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠΈΡΠ»ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ USB-Π΄ΡΠ°ΠΉΠ²Π΅Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» 9pfs Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ° Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΈ ΠΏΡΠΈΡΠΌΠ° Π΄Π°Π½Π½ΡΡ Ρ USB-ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΡΠΈ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π€Π‘ 9p ΠΏΠΎΠ²Π΅ΡΡ USB (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, «mount -t 9p -o trans=usbg,aname=/path/to/fs <device> /mnt/9»). Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΌΠ΅ΡΡΠΎ NFS Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π° ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΡΡΡΠΎΠΉΡΡΠ².
- ΠΠΈΡΠΊΠΎΠ²Π°Ρ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°, Π²Π²ΠΎΠ΄/Π²ΡΠ²ΠΎΠ΄ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ
- Π ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ VFS Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ c ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ, ΡΠ°Π·ΠΌΠ΅Ρ Π±Π»ΠΎΠΊΠΎΠ² Π² ΠΊΠΎΡΠΎΡΡΡ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅. Π ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π΄Π°Π½Π½Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² XFS.
- Π ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ FUSE, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠ°ΠΏΠΏΠΈΠ½Π³Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ Π΄Π»Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΡΠΆΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Ρ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π½ΠΎΠ²Π°Ρ fcntl-ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ F_CREATED_QUERY, Π΄Π°ΡΡΠ°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π±ΡΠ» Π»ΠΈ ΡΠΎΠ·Π΄Π°Π½ ΡΠ°ΠΉΠ», ΠΎΡΠΊΡΡΡΡΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ»Π°Π³Π° O_CREAT, ΠΈΠ»ΠΈ ΠΎΠ½ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π» Π΄ΠΎ ΡΡΠΎΠ³ΠΎ.
- Π ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² name_to_handle_at() Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΡΠΎΡΠ΅ΠΊ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π³ΠΎΠ½ΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π·Π±ΠΎΡΠ΅ /proc/mountinfo.
- Π Π°Π·ΠΌΠ΅Ρ ΡΡΡΡΠΊΡΡΡΡ «file» Π² ΡΠ΄ΡΠ΅ ΡΠΎΠΊΡΠ°ΡΡΠ½ Ρ 232 Π΄ΠΎ 184 Π±Π°ΠΉΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ.
- ΠΠ°ΠΏΡΠ΅ΡΠ΅Π½ΠΎ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΊ ΡΠΎΡΠΊΠ°ΠΌ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π½ΡΡΡΠΈ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ /proc, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² /proc/PID/fd, ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ.
- Π ΠΏΡΠ΅Π²Π΄ΠΎ-Π€Π‘ NSFS (NameSpace FS), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°ΠΌΠΈ ΠΈΠΌΡΠ½, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°Ρ ΠΈΠΌΡΠ½ ΡΠΎΡΠ΅ΠΊ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
- Π ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ EROFS (Extendable Read-Only File System), ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΠ°Π·Π΄Π΅Π»Π°Ρ , Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ· Π΄ΠΈΡΠΊΠΎΠ²ΡΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ², ΡΠΎΡ ΡΠ°Π½ΡΠ½Π½ΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΉΠ»ΠΎΠ².
- Π XFS Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ioctl-ΠΊΠΎΠΌΠ°Π½Π΄Ρ XFS_IOC_START_COMMIT ΠΈ XFS_IOC_COMMIT_RANGE Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ.
- Π NFS Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° «LOCALIO», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈ ΡΠ΅ΡΠ²Π΅Ρ NFS Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈ ΡΠΎΠΌ ΠΆΠ΅ Ρ ΠΎΡΡΠ΅, Π΄Π»Ρ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΉ.
- Π ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Btrfs ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΎΠ²Π΅Π΄ΡΠ½ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ ΠΊΠΎΠ΄Π°, ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π° ΠΎΠ±Π»Π°ΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΊΡΡΠ΅Π½ΡΠΎΠ² ΠΏΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ ΡΡΠ΅Π½ΠΈΡ, ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠ»ΠΈΠ°Π½ΡΠΎΠ² ΡΡΡΠ°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ (page folios), ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΡΡΡΡΠΊΡΡΡΡ btrfs_path.
- Π ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Ext4 ΡΡΡΡΠ°Π½Π΅Π½Ρ ΠΎΡΠΈΠ±ΠΊΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π±Π»ΠΎΠΊΠΎΠ², ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΊΡΡΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠΌ «fast commit» ΠΈ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.
- ΠΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ LSM-ΠΌΠΎΠ΄ΡΠ»Ρ IPE (Integrity Policy Enforcement), ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Microsoft Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠ°Π½Π΄Π°ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠΎΠΌ. ΠΠΎΠ΄ΡΠ»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΎΠ±ΡΡΡ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡ ΠΈ ΠΊΠ°ΠΊΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²Π΅ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ IPE ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Ρ ΡΡΡΡΠΎΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ ΡΡΠ°Π»ΠΎΠ½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Ρ ΡΡΠ΅ΠΉ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ dm-verity.
- ΠΠ° ΡΡΠ°ΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ΄ΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π·Π΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π·Π°ΡΠΈΡΡ ΠΎΡ ΡΠ°Π·Π½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΊΠ»Π°ΡΡΠ° Spectre Π² CPU. Π Kconfig ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ: MITIGATE_MDS (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Microarchitectural Data Sampling), MITIGATE_TAA (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ TSX Asynchronous Abort), MITIGATE_MMIO_STALE_DATA (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ MMIO Stale Data), MITIGATE_L1TF (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ L1 Terminal Fault), MITIGATE_RETBLEED (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Retbleed), MITIGATE_SPECTRE_V1, MITIGATE_SPECTRE_V2 (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Spectre), MITIGATE_SRBDS (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Special Register Buffer Data Sampling), MITIGATE_SSB (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Speculative Store Bypass).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ proc_mem.force_override ΠΈ Π½Π°Π±ΠΎΡ ΡΠ±ΠΎΡΠΎΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π² Kconfig (PROC_MEM_FORCE_ALWAYS, PROC_MEM_FORCE_PTRACE ΠΈ PROC_MEM_FORCE_NEVER), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΡ Π·Π°ΠΏΡΠ΅ΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ΅ΡΠ΅Π· /proc/pid/mem.
- ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° LSM (Linux security module) ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Π° Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ², ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΡΡΠΈΠ»ΠΈΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ°ΡΠ½ΡΡ ΡΠ΄Π΅Ρ Π΄Π»Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ARM64 Π² Π³ΠΎΡΡΠ΅Π²ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ , Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ Π½Π° Android-ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠΎΠΌ KVM (protected KVM).
- Π LSM-ΠΌΠΎΠ΄ΡΠ»Π΅ Landlock, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΌ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π³ΡΡΠΏΠΏΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ «IPC scoping» Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ sandbox-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Unix-ΡΠΎΠΊΠ΅ΡΡ ΠΈ ΡΠΈΠ³Π½Π°Π»Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΠ΅ΡΠΈΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Unix-ΡΠΎΠΊΠ΅ΡΠΎΠ² ΠΈΠ· sandbox-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ, Π² ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΈΠ·ΠΎΠ»ΡΡΠΈΡ, Π½ΠΎ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ Π² ΡΠΎΠΉ ΠΆΠ΅ scope-ΠΎΠ±Π»Π°ΡΡΠΈ.
- Π Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ΅ KVM Π² CPUID Π΄Π»Ρ Π³ΠΎΡΡΠ΅Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ»Π°Π³, ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΡΡΡΠΈΠΉ ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ AVX10.1.
- Π‘Π΅ΡΠ΅Π²Π°Ρ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Device Memory TCP, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠΎΠΊΠ΅ΡΡ Π΄Π»Ρ ΠΏΡΡΠΌΠΎΠΉ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠ΅ΡΠΈΡΠ΅ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΏΠΎ ΡΠ΅ΡΠΈ (ΡΠ΅ΠΆΠΈΠΌ zero-copy) ΠΈ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ. ΠΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π² ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΎΡ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΊΠ°ΡΡΡ Π² ΠΏΠ°ΠΌΡΡΡ ΠΏΠ΅ΡΠΈΡΠ΅ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΠ»ΠΈ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² ΡΠ΅ΡΠ΅Π²ΡΡ ΠΊΠ°ΡΡΡ Π½Π°ΠΏΡΡΠΌΡΡ, ΠΌΠΈΠ½ΡΡ CPU, Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² ΠΎΠ±ΡΡΠ½ΡΠ΅ Π±ΡΡΠ΅ΡΡ ΡΠ΄ΡΠ°.
- Π Π°ΡΡΠΈΡΠ΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ Ethernet ΠΈ Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ Intel iwlwifi Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²ΡΠ½ΠΎΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ RLC/SMPS Π½Π° ΡΡΠΎΡΠΎΠ½Ρ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ, Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ RealTek rtw89 ΠΏΠΎΠ²ΡΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΈΠΏΠΎΠ² RTL8852BT/8852BE-VT (WiFi 6), Π² Ethernet-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ microchip Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ IEEE 802.3bw (100BASE-T1) ΠΈ IEEE 802.3bp, ΡΠ»ΡΡΡΠ΅Π½Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ Ethernet Microsoft vNIC ΠΈ IBM veth. ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ Π΄Π»Ρ Ethernet-ΡΠΈΠΏΠΎΠ² Realtek RTL9054, RTL9068, RTL9072, RTL9075, RTL9068, RTL9071 ΠΈ Microchip LAN8650/1 10BASE-T1S MAC-PHY.
- Π MPTCP (MultiPath TCP), ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° TCP Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ TCP-ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΌΠ°ΡΡΡΡΡΠ°ΠΌ ΡΠ΅ΡΠ΅Π· ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ, ΡΠ°Π·ΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΏΡΠΈ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ Π²Π΅ΡΠΎΠ²ΡΡ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠΎΠ² ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ Ρ 8 Π΄ΠΎ 16 Π±ΠΈΡ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΡΡΠ΅Π³ΠΎΡΡ (blackhole) ΡΡΠ°ΡΠΈΠΊΠ° ΠΈ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠΏΡΡΠΎΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΠΈΠΌΠΈ ΠΊ ΠΏΠΎΡΠ΅ΡΠ΅ ΡΡΠ°ΡΠΈΠΊΠ°.
- ΠΠ»Ρ IPv6 ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ»Π°Π³Π° «p» Π² PIO (Prefix Information Option), ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ Π² Π°Π½ΠΎΠ½ΡΠ°Ρ RA (IPv6 Router Advertisements) Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΡΠ΅ΡΠ΅Π· DHCPv6-PD (DHCPv6 Prefix Delegation, RFC9663) Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π°Π΄ΡΠ΅ΡΠΎΠ² Π½Π° Π±Π°Π·Π΅ ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ SLAAC (Stateless Address Autoconfiguration). Π IPv6 IOAM6 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΡΡΠΈΠΈ tunsrc, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
- ΠΠΎΠ²ΡΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² IPsec.
- ΠΠΎΠ²ΡΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ±ΡΠΎΡΠ° (flush) Π±ΠΎΠ»ΡΡΠΈΡ Π½Π°Π±ΠΎΡΠΎΠ² ΠΏΡΠ°Π²ΠΈΠ» nftables. Π nfnetlink_queue ΡΠ»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° SCTP.
- Π API ethtool Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΊΠ°ΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠ΅ΡΠ΅Π²ΠΎΠΌΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ.
- ΠΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ AMDGPU ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ GPU AMD RDNA4 («GFX12»). ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±ΡΠΎΡΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Π΅ΠΉ Π·Π°Π΄Π°Ρ Π±Π΅Π· ΡΠ±ΡΠΎΡΠ° ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π²ΡΠ΅Π³ΠΎ GPU.
- ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ drm-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠΌ (Direct Rendering Manager) Xe Π΄Π»Ρ GPU Π½Π° Π±Π°Π·Π΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Intel Xe, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠ°Ρ Intel ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° Arc ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠ΅, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Tiger Lake. Π Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ Battlemage ΠΈ Lunar Lake. ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° CCS-ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² (Color Control Surface) Xe2 Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΈ Π΄ΠΈΡΠΊΡΠ΅ΡΠ½ΡΡ GPU.
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ i915 ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ HWMON ΠΈΠ»ΠΈ sysfs (Π°ΡΡΠΈΠ±ΡΡ «fan1_input») ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΊΠΎΡΠΎΡΡΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊΡΠ»Π΅ΡΠ°. ΠΠ±ΡΡΠ²Π»Π΅Π½ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ «i915.modeset», Π²ΠΌΠ΅ΡΡΠΎ «i915.modeset=0» ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ «i915.nomodeset».
- Π DRM-Π΄ΡΠ°ΠΉΠ²Π΅Ρ msm (GPU Qualcomm Adreno) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU A615, A306 ΠΈ A621.
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ Nouveau ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΡΠΈΡΡΠΊΠ° Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡ.
- Π Π΄ΡΠ°ΠΉΠ²Π΅Ρ intel_pstate, ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ (P-state) Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ Intel, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π³ΠΈΠ±ΡΠΈΠ΄Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Ρ Π°ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ½ΡΠΌΠΈ (ΠΎΡΠ»ΠΈΡΠ°ΡΡΠΈΠΌΠΈΡΡ ΠΏΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌ) CPU, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ Granite Rapids ΠΈ Sierra Forest. Π Π΄ΡΠ°ΠΉΠ²Π΅Ρ intel_idle Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° CPU Xeon Granite Rapids. Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ intel_rapl ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² AMD ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° 1Ah ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Intel ArrowLake-U.
- ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ARM SoC Snapdragon X Elite, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ 12-ΡΠ΄Π΅ΡΠ½ΡΠΉ CPU Qualcomm Oryon ΠΈ GPU Qualcomm Adreno. Π§ΠΈΠΏ Π½Π°ΡΠ΅Π»Π΅Π½ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Π½ΠΎΡΡΠ±ΡΠΊΠ°Ρ ΠΈ ΠΠ, ΠΈ ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°Π΅Ρ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ΅ΡΡΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΈΠΏΡ Apple M3 ΠΈ Intel Core Ultra 155H.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ARM-ΠΏΠ»Π°Ρ, SoC ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²: Broadcom bcm2712 (Raspberry Pi 5), Renesas R9A09G057 (RZ/V2H), Qualcomm Snapdragon 414 (MSM8929), Lenovo ThinkPad T14s Gen 6, Lenovo A6000/A6010, Surface Laptop 7, Anbernic RG35XXSP, Firefly Core-PX30-JD4, Lunzn Fastrhino R68S, Aspeed Riser, AGX Orin, Rockchip Qnap-TS433, Huashan Pi, Meta Catalina, BeagleY-AI, NanoPi R2S Plus, ExynosAuto v920, SOPHGO SG2002, Qualcomm IPQ5332, LG G4 (h815), Cool Pi CM5 GenBook, Anbernic RG35XXSP, GameForce Ace, IBM P11, Kontron i.MX93 OSM-S, NanoPC-T6
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΊΡΠ°Π½Π½ΡΡ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ Anbernic RG28XX, On Tat Industrial Company KD50G21-40NT-A1, Innolux G070ACE-LH3, Melfas lmfbx101117480, Densitron DMT028VGHMCMI-1D, Microchip AC40T08A, AOU B116XTN02.3, AUO B116XAN06.1, AOU B116XAT04.1, BOE TV101WUM-LL2, BOE NV140WUM-N41, BOE NV133WUM-N63, BOE NV116WHM-A4D, BOE NE140WUM-N6G, CMN N116BCA-EA2, CMN N116BCP-EA2, CSW MNB601LS1-4, Starry er88577.
- Π Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΈΠΏΠΎΠ² ΠΈ ΠΊΠΎΠ΄Π΅ΠΊΠΎΠ² RME Digiface USB, AMD ACP 7.1, Mediatek MT6367, MT8365, Realtek RTL1320, C-Media CM9825. ΠΠ±ΡΡΠ²Π»Π΅Π½Ρ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌΠΈ ΡΡΠ°ΡΡΠ΅ Π·Π²ΡΠΊΠΎΠ²ΡΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ Π΄Π»Ρ ASoC Intel, Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ AVS. ΠΠ½Π΅ΡΠ΅Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΉ Π² Π΄ΡΠ°ΠΉΠ²Π΅Ρ SoundWire.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru