Portál AbcLinuxu, 6. května 2025 16:20

Jaderné noviny – 31. 10. 2013: Kde končí jádro

19. 11. 2013 | Luboš Doležel
Články - Jaderné noviny – 31. 10. 2013: Kde končí jádro  

Aktuální verze jádra: 3.12-rc7. Citáty týdne: Alan Cox, Linus Torvalds, Greg Kroah-Hartman. Výsledky voleb do technické rady Linux Foundation. Hranice mezi jádrem a uživatelským prostorem.

Obsah

Aktuální verze jádra: 3.12-rc7

link

Aktuální vývojová verze jádra je 3.12-rc7 vydaná 27. října. Linus k ní řekl: Týden jaderného sumitu je za námi a vyšlo sedmé – a asi poslední – rc pro 3.12 a já se vracím ke svému obvyklému nedělnímu programu. Také upozornil, že jeho blížící se cestování pravděpodobně udělá ze začleňovacího okna 3.13 docela zmatek.

Stabilní aktualizace: verze 3.2.52 vyšla 27. října.

Citáty týdne: Alan Cox, Linus Torvalds, Greg Kroah-Hartman

link

Jím pizzu a aktualizuji svůj neposlušný počítač. Snažím se uvést mozek do původního stavu a pokud se všechno papírování vydaří, tak budu od pondělka na částečný úvazek zpátky v linuxovém světě v Intelu.

Vítej zpět, Alane Coxi

Mám dokonce pocit, že jsme s pravidlem „všechna pravidla [policies] v uživatelském prostoru“ zašli příliš daleko, protože pravdou je, že uživatelský prostor není na řešení pravidel moc dobrý. Hlavně když se má reagovat na složité situace s různými zařízeními. Z toho, co jsem viděl, to s „pravidly v uživatelském prostoru“ dopadá dvěma způsoby:

Myslím, že bychom v jádře měli říkat „naše výchozí hodnoty jsou něco, co každý normální systém může používat a v průměru by to mělo fungovat dobře“. „Pravidla v uživatelském prostoru“ by zbyla pro šílené lidi, co dělají opravdu podivné věci a mohou si dovolit ladit systém dle svých speciálních potřeb.

-- Linus Torvalds

Ano, měl jsem to udělat, ale já a James jsme ve vlaku dali láhev vína a není moc dobrý nápad dělat na modelu ovladačů s vínem. To chce spíš něco tvrdšího.

-- Greg Kroah-Hartman

Výsledky voleb do technické rady Linux Foundation

link

23. října proběhly volby do technické rady Linux Foundation. V těchto volbách, které se skoro jistě těšily většímu zájmu než ty předchozí, byli opětovně zvoleni Greg Kroah-Hartman, Thomas Gleixner a Jonathan Corbet; k nim se připojí noví členové Sarah Sharp a Matthew Garrett.

Jaderný sumit 2013

link

Jaderný sumit 2013 proběhl 23. až 25. října v Edinburghu ve Spojeném království. Jeho součástí byl den plný minikonferencí, den jen pro hlavní vývojáře jádra (jen pro pozvané) a plenární zasedání. Na LWN naleznete celou spoustu reportáží z různých akcí; v tomto vydání naleznete překlad jednoho z textů.

Hranice mezi jádrem a uživatelským prostorem

link

H. Peter Anvin a Miklos Szeredi zahájili den určený jen pro pozvané otázkou: kde přesně leží hranice mezi jádrem a uživatelským prostorem? A kdy je pak hlavně možné udělat nekompatibilní změnu v jaderném ABI s vědomím, že podporované ABI je poskytované kódem v uživatelském prostoru, který je úzce spjat s jádrem? Odpověď, kterou dostali, byla jasná, ale ne přesně taková, jakou chtěli.

Peter začal slovy, že máme jasné pravidlo o „nerozbíjení uživatelského prostoru“. Dodržování tohoto pravidla je převážně přímočaré; je nutné se vyhýbat nekompatibilním změnám v systémových voláních a věci budou fungovat dál. Zlepšujeme se i v rozhraních jako sysfs a /proc. Minulý rok se ale objevil zajímavý krajní případ: zavaděč GRUB2 měl ve zvyku dívat se během instalace do konfiguračních souborů jádra, aby nastavil svá menu. Přepracování jistého jaderného kódu GRUB2 rozbilo. V tu chvíli Linus prohlásil, že konfigurační soubory nejsou součástí jaderného ABI. Řekl, že když někdo udělá něco tak hloupého, tak není možné z toho vinit jádro.

Peter pokračoval jiným problémem, který zanesl on sám před nějakými šestnácti lety. ABI automounteru mělo problémy, kvůli nimž nefungovalo s 32bitovým uživatelským prostorem pod 64bitovým jádrem. Pro vyřešení problému bylo nutné zavést nový typ rour; bylo to ukázkou toho, jak daleko jsme ochotní zajít, abychom nerozbíjeli aplikace.

Co ale situace, kdy je nutné se kompletně přesunout k novému ABI? Pro fungování pseudoterminálů z kontejnerů bude nutné udělat změny v rozhraní pty; zatím není jasné, jak v těchto situacích řešit hlavní zařízení. Rozhraní řídících skupin se pořád mění a s lidmi od systemd dochází k nedorozuměním ohledně toho, kdo „vlastní“ hierarchii kontejneru jako celek. Když někdo řekl, že systemd „chce převzít kontrolu“ nad řídícími skupinami, Linus rychle opětoval, že nic takového se nestane. James Bottomley pak řekl, že věc byla prodiskutována a vzájemně přijatelné řešení je na dosah.

Dalším problémem s ABI je současné omezení vestavěné do VFS na Linuxu, a to, že žádná samostatná operace I/O nemůže přenést více než 2 GB dat. Se zvětšováním velikostí systémů a pamětí může být toto omezení nakonec na škodu, tvrdil Peter, ale Linus říká, že tento limit nebude odstraněn. Jsme podle něj lepší než OS X, které nechává velké I/O požadavky rovnou selhat; Linux místo toho přenese maximální možný objem dat. Umožnění větších I/O operací má obrovské bezpečnostní dopady, a to do takové míry, že se nenajde žádná omluva pro zvýšení tohoto limitu. Celé řadě možných problémů se jednoduše vyhneme tím, že kód systému souborů nikdy nespatří žádný 64bitový požadavek. Dále řekl, že pokud se snažíte o 4GB zápis, „pak jste blbec“. Takovéto požadavky nebudou o nic rychlejší, není žádný důvod to tak dělat.

Linus řekl, že je principiálně proti dělání čehokoliv, co by mohlo rozbít uživatelský prostor; nebyl si jistý, proč se na toto téma vlastně hovoří. Vynořil se starý problém s body sledování [tracepoints] a Linus řekl, že pokud něco rozbijeme změnou sledovacího bodu, tak je to problém a musíme ho opravit. Greg Kroah-Hartman poukázal na to, že někteří správci subsystémů – například on sám a Al Viro – odmítají přidat sledovací body, protože mají obavy, že by je pak museli navždy podporovat. Jiní si myslí, že tento přístup je přehnaně opatrný, jelikož problémů s kompatibilitou ABI sledovacích bodů bylo celkem málo a vyskytovaly se řídce. Přístup, že nepřijimáme sledovací body, je podle Ingo Molnara neopodstatněný.

Co takové změny ve voláních printk(), jež rozbíjejí skripty, které pomocí grepu prohledávají systémové logy? Linus odpověděl, že printk() není žádná výjimka a že i tyto problémy budou opraveny. Masami Hiramatsu naznačil, že textová data obsažená v log souborech se zpracovávají snadno a že je jednoduché se přizpůsobit změnám, ale to snad poukazuje na to, že se uživatelé se změnami zkrátka vypořádávají po svém místo toho, aby si stěžovali. Bylo by zajímavé sledovat, co by se stalo, kdyby si uživatel doopravdy šel stěžovat na to, že se mu po změně v printk() rozbil skript. Linus věc uzavřel tím, že jaderní vývojáři tráví víc času obavami z tohoto typu problémů než opravou problémů, které skutečně nastaly.

Miklos se zeptal konkrétněji: kde je hranice, která určuje jaderné ABI? Některé části operačního systému žijí v jádře, zatímco jiné se nacházejí v knihovnách. Někdy se věci přesouvají; rename() dřív bylo v knihovně C, teď je to systémové volání poskytované jádrem. Servery NFS se nacházely na obou stranách pomyslné čáry, grafické ovladače se přesouvají do jádra, zvukové ovladače se přesouvaly oběma směry a systémy souborů jsou také na obou stranách.

Miklos možná doufal, že proběhne debata o tom, zda by bylo možné rozhraní mezi jádrem a některými z těchto nízkoúrovňových komponent považovat za interní a tedy oddělené od ABI jádra, ale tak to nedopadlo. Místo toho se změnilo téma a řešilo se, jestli by části NetworkManageru měly být v jádře (ne, muselo by se volat do uživatelského prostoru kvůli autentizaci a tak), ovladače, které vyžadují uzavřené komponenty v uživatelském prostoru (stále nejsou vítány) a implementace protokolu MTP, které mají v uživatelském prostoru evidentně víc věcí, než by mělo být potřeba.

Odkazy a zdroje

Kernel coverage at LWN.net: October 31, 2013

Další články z této rubriky

Jaderné noviny – přehled za březen 2025
Jaderné noviny – přehled za únor 2025
Jaderné noviny – přehled za leden 2025
Jaderné noviny – přehled za prosinec 2024
Jaderné noviny – přehled za listopad 2024

Diskuse k tomuto článku

19.11.2013 07:09 Pev | skóre: 28
Rozbalit Rozbalit vše Re: Jaderné noviny – 31. 10. 2013: Kde končí jádro
Odpovědět | Sbalit | Link | Blokovat | Admin
Alan Cox při překladu vypadl (...linuxovém světě v Intelu.).

Mimochodem, stálo by za to uvádět odkaz na původní článek (ano, je v komentáři zdrojácích, ale býval i v textu :-)).

Díky za překlad :-).
Luboš Doležel (Doli) avatar 19.11.2013 09:23 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Jaderné noviny – 31. 10. 2013: Kde končí jádro
Všechno doplněno :-)
19.11.2013 10:35 Petr Ježek | skóre: 10
Rozbalit Rozbalit vše Re: Jaderné noviny – 31. 10. 2013: Kde končí jádro
Odpovědět | Sbalit | Link | Blokovat | Admin
Každý posun toho, co ovlivňuje (spoludefinuje) chování systému, směrem k uživateli je zahrávání si s ohněm - nevyzpytatelností chování uživatele, a to i zkušeného. Praxe skýtá nepřeberně pádných důkazů... Takže souhlas s Linusem.
Archlinux for your comps, faster running guaranted!
pavlix avatar 19.11.2013 10:39 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Jaderné noviny – 31. 10. 2013: Kde končí jádro
Tohle moc o uživatelích nebylo.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.