Změna frekvence (HZ)
Jednou ze změn, plánovaných do příští verze jádra (2.6.13), je mimo jiné změna výchozí frekvence jádra (tzv. HZ value), probíraná v LKML v půli července. Výchozí hodnota pro jádra řady 2.4 zůstává na 100 Hz, zatímco pro novější jádra řady 2.6 se změní z 1000 Hz na dohodnutých 250 Hz. Navíc ji bude možné individuálně nastavit při konfiguraci jádra. Následkem této změny by jednoduše řečeno mělo být (mírné) zvýšení výkonnosti systému na úkor jeho interaktivity.
Hodnota frekvence jádra určuje, jak často (kolikrát za sekundu) je volán plánovač jádra pomocí přerušení od hardwarového časovače. Až do řady 2.4 včetně to bylo 100 Hz, ale zvyšující se rychlost hardwaru a potřeba vyšší frekvence pro interaktivní a multimediální aplikace si vynutily její zvýšení. A aby bylo znatelné, zvýšil ji Linus v řadě 2.6 rovnou na 1000 Hz. Takto vysoká frekvence má ale negativní vliv na propustnost (nebo chcete-li výkon) systému nebo šetření energie (časovač zbytečně často přerušuje procesor a to např. snižuje životnost baterií).
Oboustranně výhodná hodnota neexistuje, nová výchozí frekvence 250 Hz je kompromis mezi přesnějším časováním pro aplikace (vyšší hodnota) a lepším využitím CPU (nižší hodnota). Nebo řečeno jinak, mezi kratší dobou odezvy (vyšší hodnota) a vyšší propustností systému (nižší hodnota). Navíc ji bude možné konfigurovat při překladu jádra a do budoucna je plánována dynamicky se měnící frekvence podle aktuálního zatížení systému (záplata pro tohle už existuje: dyn-tick).
Linux Kernel Developers' Summit a Linux Symposium
Jako každý rok (od roku 2001) touto dobou se konal 18. a 19. července Linux Kernel Developers' Summit, setkání vývojářů linuxového jádra. A jako tradičně v kanadské Ottawě. Vývojáři debatovali o nynějším stavu jádra a o jeho budoucím vývoji, přednesené příspěvky byly na rozličná aktuální a zajímavá témata, namátkou správa virtuální paměti, virtualizace, VFS, realtime řešení, QA a mnohá další (třeba "Jádro a linuxový desktop"). Shrnutí setkání naleznete na lwn.net/Articles/KernelSummit2005, včetně skupinové fotky; Linuse určitě poznáte, ale co třeba Andrew Morton? Nebo Alan Cox či Ingo Molnar? (Nápověda: poslední dva jmenovaní na fotce bohužel nejsou.)
A vzápětí poté, 20. až 23. července, opět v Ottawě, se konalo také (sedmé) Linux Symposium, odborná konference snad o všech aktuálních novinkách a problémech okolo Linuxu (jádro, infrastruktura, bezpečnost, síťování, atd.). Místo vyjmenovávání témat příspěvků bude lepší rovnou uvést stránku konference, www.linuxsymposium.org/2005, kde je k nalezení nejen jejich seznam, ale hlavně celý sborník konference. Za zmínku ale rozhodně stojí příspěvek editora LWN Jonathana Corbeta s názvem "A 2.6 kernel roadmap", jejíž prostý název hovoří za vše. "Slajdy" jsou na lwn.net/talks/ols2005/ a opravdu je vřele doporučuji k prohlédnutí!
Historie vývoje jádra v Gitu
To, že správa zdrojových kódů linuxového jádra byla převedena (v polovině dubna) z komerčního BitKeeperu na svobodný Git, již asi víte. Psal jsem o tom v červnovém čísle. Také jsem uvedl, že nebyla převedena celá historie vývoje řady 2.6, a že tedy v Gitu je historie až od verze 2.6.12-rc2. To už ale nyní není pravda. Linus nakonec celou historii vývoje řady 2.6 do Gitu koncem července převedl, čili Git úplně nahradil BitKeeper. Zajímavá je úroveň komprese databáze: z 2,4 GB na 166 MB. Pokud bude všechno v pořádku, bude do Gitu kompletně převedena i starší řada 2.4.
Automatic Kernel Tunables
Vyvíjíte linuxovou aplikaci a potřebujete zjišťovat různé informace o systému a zdrojích nebo nastavovat rozličné parametry jádra (kernel tunables) přístupné přes ProcFS (adresář /proc), SysFS (/sys), funkce sysconf, rlimit apod.? Pak vám může přijít vhod knihovna libtune z nového projektu Automatic Kernel Tunables (AKT). Tento projekt se snaží poskytnout standardní rozhraní (API) pro přístup ke kernel tunables a dalším systémovým informacím a "zakrýt" tak rozdílné a neportovatelné způsoby přístupu k nim.
Standardní API je ale pouze prvním krokem projektu AKT. Druhým, mnohem náročnějším krokem, je "naučit" jádro samo automaticky vyladit tyto parametry podle aktuální potřeby, což by jistě byla velice užitečná a ceněná vlastnost Linuxu. Tento ambiciózní projekt sídlí na adrese akt.sourceforge.net a za pozornost stojí i jen jeho dokumentace, protože jsou v ní popsány právě ty rozličné kernel tunables.
sdparm
Pravděpodobně víte, že pro zjišťování a nastavování parametrů nebo měření rychlosti (Parallel) ATA disků existuje užitečný nástroj hdparm. Pro SCSI disky donedávna podobný nástroj neexistoval, ale to Douglas Gilbert změnil. Vytvořil nástroj sdparm s obdobnou funkcionalitou. sdparm ale nepracuje jen se SCSI disky, ale obecně s jakýmkoliv zařízením používajícím SCSI subsystém jádra. To zahrnuje i např. (SCSI) CD/DVD, pásková zařízení, SATA disky nebo zařízení podporující USB Mass Storage, Fibre channel zařízení a mnohá další.
Více informací a samozřejmě samotný nástroj naleznete na jeho domovské stránce www.torque.net/sg/sdparm.html. Kromě tohoto nového nástroje už delší dobu existují programy z balíků sg3_utils, scsitools a dalších pro zasílání SCSI příkazů. Na závěr se ještě zmíním o poměrně novém nástroji blktool, který pracuje s obecnými blokovými zařízeními a "umí" stejné věci jako hdparm, něco z sdparmu a něco navíc.