Co dělá jádro -- zprostředkovává spojení mezi softwarem (volání knihoven apod.) a hardwarem počítače. Obdoba různých ovladačů zařízení z MS-Win.
Proč upgradovat jádro? -- nová zařízení, lepší správa procesů, vyšší
výkon... Podporovaná zařízení viz Hardware-HOWTO.
Zdrojové texty jádra jsou na ftp.kernel.org v adresáři
/pub/linux/kernel/vx.y/, kde x.y je verze jádra. Pokud verze
končí lichým číslem, jdená se o testovací, vývojovou verzi (může být
nestabilní). Verze se sudým číslem jsou považovány za stabilní.
Soubor se zdrojovými texty se obvykle jmenuje linux-x.y.z.tar.gz, kde
x.y.z je číslo verze.
Pro download lze použít mirrory ftp.xx.kernel.org, kde xx je
kód dané země (cz, us, uk apod.).
Zrojové texty rozbalíme tímto způsobem:
su; cd /usr/src
uname -r)
tar xfzvp linux-x.y.z.tar.gz)
Na konfiguraci jádra máme několik možností:
make config -- spustí se bash-skript, který nám položí množství
dotazů. Podle toho nakofiguruje jádro. Nejméně pohodlná forma.
make menuconfig -- celoobrazovkové prostředí pro konfiguraci.
Asi nejvíce používáno.
make xconfig -- obdoba v okénkovém prostředí Xwindows.
Většina voleb má 2 možnosti y/n. Zařízení mají obvykle
ještě volby m (zavést jako modul). Nová jádra mají též možnost
?, která vypíše krátkou nápovědu o tom, co daná záležitost znamená.
Při konfiguraci nastavujeme zejména:
y, neboť Linux s
koprocesorem počítá.y.i386, poběží na všem.ext2fs -- nativní FS pro Linux
proc -- virtuální FS poskytující rozhraní pro komunikaci s
jádrem a procesy. Většinou nutné, spousta aplikací na něm závisí.
msdos
NFS -- pokud budeme chtít sdílet soubory po síti
ISO-9660 -- CDčka.
y.y, jádro bude nejspíš větší, nebo pomalejší (nebo
oboje). Používá se pro testování, u jádra pro rozumný provoz obvykle
vypnuto.Po tomto kroku se ještě podíváme do Makefile, kde můžeme nastavit
například nové číslo verze jádra apod.
Pomocí make dep zkontrolujeme závislosti.
make clean odstraní některé nepotřebné soubory (vhodné po použití
nějakého patche).
Zkompilujeme pomocí make bzImage, které vytvoří komprimované jádro
do souboru arch/i386/boot/bzImage. Starší jádra nevyžadovala kompresi
(byla menší), vytvářela se jako make zImage.
make mrproper je kvalistnější cleaning. Mimo jiné smaže i
soubor s konfigurací jádra, takže musíme rekofigurovat pomocí make ...config.
Moduly jsou části jádra (ovladače), které se do paměti zavádějí až na požádání (když jsou potřeba). Po delší době nepoužití se z paměti opět odstraní. Šetří se tak paměť. Na druhou stranu u věcí, které jsou potřeba stále, je nesmysl použít modul a je třeba je zakompilovat rovnou do jádra (jsou pak rychlejší).
Utility pro práci s moduly lze stáhnout ze stejného místa jako jádro jako
modutils-x.y.z.tar.gz. x.y.z volíme menší/rovno
x.y.z našeho jádra. Rozbalíme pomocí ar zxvf
modutils-x.y.z.tar.gz, přeložíme, make install.
S moduly pak pracujeme pomocí programů: insmod, rmmod, ksyms, lsmod,
genksyms, modprobe, depmod v adresáři /sbin.
Moduly jsou distribuovány přímo s jádrem. Pokud chceme něco použít jako
modul, v jádře nesmíme mít nastaveno y, ale m. Moduly
přeložíme pomocí make modules. Přeložené moduly najdeme v
/usr/src/linux/modules.
Moduly můžeme zavádět přímo z tohoto adresáře, nebo je mainstalovat do
/lib/modules/x.y.z pomocí make modules_install.
Přejmenuje původní jádro (např. na /vmlinuz-old)
Nové jádro nakopírujeme do vhodného souboru (např. /vmlinuz).
V /etc/lilo.conf nakonfigurujeme Lilo pro nové jádro.
image = /vmlinuz
label = nove
root = /dev/hda1
...
image = /vmlinuz-old
label = stare
root = /dev/hda1
...
Znovu spustíme lilo, aby se nová konfigurace zapsala na potřebné místo (do boot sektoru disku).
Kernel-HOWTO, Modules na http://www.linux.cz/linuxdoc/HOWTO/HOWTO-INDEX/os.html.