Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π―Π½ ΠΠ°ΡΠ° (Jan Kara) ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ SUSE ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ» ΠΏΠ°ΡΡ, ΡΠ΄Π°Π»ΡΡΡΠΈΠΉ ΠΈΠ· ΡΠ΄ΡΠ° Linux ΠΊΠΎΠ΄ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ Xenix, SystemV/386 ΠΈ Coherent. ΠΠ°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ ΠΊΠ°ΠΊ Π½Π΅ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠΉ (orphaned) Ρ 2023 Π³ΠΎΠ΄Π°, ΠΈ ΠΆΠ΅Π»Π°ΡΡΠΈΡ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡ Π΅Π³ΠΎ Ρ ΡΠ΅Ρ ΠΏΠΎΡ ΡΠ°ΠΊ ΠΈ Π½Π΅ Π½Π°ΡΠ»ΠΎΡΡ. ΠΡΠΉΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΡΠΈΡΡΠΈΠ°Π½ ΠΡΠ°ΡΠ½Π΅Ρ (Christian Brauner), ΠΎΡΠ²Π΅ΡΠ°ΡΡΠΈΠΉ Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π² ΡΠ΄ΡΠ΅, ΡΠΎΠ³Π»Π°ΡΠΈΠ»ΡΡ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡΠΈΠ½ΡΠ» ΠΏΠ°ΡΡ Π² Π²Π΅ΡΠΊΡ vfs-6.15. ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΎΠ² Π½Π°Π·Π°Π΄ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ vfs-6.15 Π±ΡΠ»ΠΎ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½ΠΎ Π² Π²Π΅ΡΠΊΡ linux-next, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π΅Π΄ΡΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π»Ρ Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠ΄ΡΠ° 6.15.
ΠΡΡΠΎΡΠΈΡ Π½Π°ΡΠ°Π»Π°ΡΡ Π² 2002 Π³ΠΎΠ΄Ρ, ΠΊΠΎΠ³Π΄Π° ΡΠ΄ΡΠΎ Linux Π±ΡΠ»ΠΎ ΠΈΠ·Π±Π°Π²Π»Π΅Π½ΠΎ ΠΎΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ (BKL — Big Kernel Lock) Π² ΠΏΠΎΠ»ΡΠ·Ρ Π±ΠΎΠ»Π΅Π΅ Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΡΡ
Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ. Π’ΠΎΠ³Π΄Π° Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ SystemV Π±ΡΠ» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Π½Π° rwlock, Π½ΠΎ ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π»ΠΎ ΠΊ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ, ΠΈΠ·-Π·Π° ΠΊΠΎΡΠΎΡΡΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π½Π΅ ΠΌΠΎΠ³ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ Π² ΡΠΏΡΡΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ·ΠΎΠ²Π° Π²ΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠΈΡΠ°Π²ΡΠ΅ΠΉ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ inode. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π±ΡΠ»Π° Π·Π°ΠΌΠ΅ΡΠ΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ Π² 2023 Π³ΠΎΠ΄Ρ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΡΡΠ΅ΡΡ-ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΌ SyzBot. ΠΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΠΈΠ½ΡΠΈΠ΄Π΅Π½Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π€Π‘ SystemV Π½ΠΈΠΊΡΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈ Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru