spl (скорочення від set priority leve) — це назва для набору підпрограм або макросів ядра Unix, що використовуються для зміни рівня пріоритету переривань. Історично це було необхідно для синхронізації критичних розділів коду ядра, які не слід переривати. Новіші варіанти Unix, які підтримують симетричну багатопроцесорність, тепер здебільшого використовують для цієї мети мьютекси, що є більш загальним рішенням, тому кілька процесорів можуть виконувати код ядра одночасно.
У старих версіях Unix PDP-11 було вісім таких підпрограм, починаючи від spl0 до spl7, кожна з яких відповідала одному рівню пріоритету переривань PDP-11 на додаток до splx, який відновлює попередній рівень пріоритету). У BSD Unix і його похідних вони називаються splhigh, splserial, splsched, splclock, splstatclock, splvm, spltty, splsofttty, splnet, splbio, splsoftnet, splsoftclock, spllowersoftclock, spl0 і splx.
Станом на березень 2019 року сімейство примітивів spl все ще активно використовується в OpenBSD та NetBSD, про що свідчить велика кількість викликів splnet() у мережевому коді; тоді як FreeBSD і DragonFly BSD використовують більш сучасні концепції; наприклад, у DragonFly токени LWKT можуть використовуватися замість spl.
Посилання
- Lehey, Greg (2001), Improving the FreeBSD SMP implementation [ 23 січня 2022 у Wayback Machine.], retrieved 11 May 2018
- "spl(9) - OpenBSD manual pages" [ 23 січня 2022 у Wayback Machine.]. Retrieved 11 May 2018.
- Lions, John (1976). [en], with Source Code. p. 41, p. 43
- McKusick, Marshall Kirk; et al. (authors) (2004). The Design and Implementation of the FreeBSD Operating System. Addison-Wesley.
- "/sys/net/if.c" [ 23 січня 2022 у Wayback Machine.]. BSD Cross Reference. OpenBSD. 2019-03-01. Retrieved 2019-03-05.
s = splnet();
- "/sys/net/if.c" [ 23 січня 2022 у Wayback Machine.]. BSD Cross Reference. NetBSD. 2019-03-01. Retrieved 2019-03-05.
s = splnet();
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
spl skorochennya vid set priority leve ce nazva dlya naboru pidprogram abo makrosiv yadra Unix sho vikoristovuyutsya dlya zmini rivnya prioritetu pererivan Istorichno ce bulo neobhidno dlya sinhronizaciyi kritichnih rozdiliv kodu yadra yaki ne slid pererivati Novishi varianti Unix yaki pidtrimuyut simetrichnu bagatoprocesornist teper zdebilshogo vikoristovuyut dlya ciyeyi meti myuteksi sho ye bilsh zagalnim rishennyam tomu kilka procesoriv mozhut vikonuvati kod yadra odnochasno U starih versiyah Unix PDP 11 bulo visim takih pidprogram pochinayuchi vid spl0 do spl7 kozhna z yakih vidpovidala odnomu rivnyu prioritetu pererivan PDP 11 na dodatok do splx yakij vidnovlyuye poperednij riven prioritetu U BSD Unix i jogo pohidnih voni nazivayutsya splhigh splserial splsched splclock splstatclock splvm spltty splsofttty splnet splbio splsoftnet splsoftclock spllowersoftclock spl0 i splx Stanom na berezen 2019 roku simejstvo primitiviv spl vse she aktivno vikoristovuyetsya v OpenBSD ta NetBSD pro sho svidchit velika kilkist viklikiv splnet u merezhevomu kodi todi yak FreeBSD i DragonFly BSD vikoristovuyut bilsh suchasni koncepciyi napriklad u DragonFly tokeni LWKT mozhut vikoristovuvatisya zamist spl PosilannyaLehey Greg 2001 Improving the FreeBSD SMP implementation 23 sichnya 2022 u Wayback Machine retrieved 11 May 2018 spl 9 OpenBSD manual pages 23 sichnya 2022 u Wayback Machine Retrieved 11 May 2018 Lions John 1976 en with Source Code p 41 p 43 McKusick Marshall Kirk et al authors 2004 The Design and Implementation of the FreeBSD Operating System Addison Wesley sys net if c 23 sichnya 2022 u Wayback Machine BSD Cross Reference OpenBSD 2019 03 01 Retrieved 2019 03 05 s splnet sys net if c 23 sichnya 2022 u Wayback Machine BSD Cross Reference NetBSD 2019 03 01 Retrieved 2019 03 05 s splnet