Nalagalni moduli lahko prihranijo pomnilnik in poenostavijo konfiguracijo. Domet modulov je razširjen na datotečne sisteme, gonilnike omrežnih kratic, tračnih enot, tiskalnikov in še več.
Modulski pripomočki so na voljo, kadarkoli dobite izvirno kodo vašega
jedra kot modutils-x.y.z.tar.gz
; izberite najvišjo številko
različice x.y.z
, ki je enaka vašemu jedru ali manjša.
Odpakirajte jih z ,, tar zxvf modutils-x.y.z.tar.gz
``, pojdite
s cd
na imenik, ki ga ustvari tar
(modutils-x.y.z
), preglejte datoteko README
in
upoštevajte navodila (kar je navadno preprosto, denimo
make install
). Zdaj morate imeti programe insmod
,
rmmod
, ksyms
, lsmod
, genksyms
,
modprobe
in depmod
v imeniku /sbin
. Če
želite, lahko preskusite pripomočke s preizkuševalnim gonilnikom
,,hw`` v programu insmod
; preberite si datoteko INSTALL
v tem podimeniku, če vas zanimajo podrobnosti.
insmod
vključi modul v tekoče jedro. Moduli imajo navadno
podaljšek .o
; preizkuševalni gonilnik, omenjen zgoraj, se
imenuje drv_hello.o
, torej morate napisati ,,insmod
drv_hello.o
``, če ga želite vključiti. Module, ki jih jedro
trenutno uporablja, lahko izpišete z lsmod
. Izhod je videti takole:
blah:# lsmod Module: #pages: Used by: drv_hello 1
,,drv_hello
`` je ime modula, uporablja eno stran (4 KB)
pomnilnika in noben drug jedrni modul trenutno ni odvisen od njega. Ta
modul odstranite z ukazom ,,rmmod drv_hello
``. Paziti morate,
ker hoče rmmod
ime modula, ne imena datoteke; dobite ga z
izpisom lsmod
. Nameni drugih modulskih pripomočkov so našteti
v njihovih referenčnih priročnikih (npr. man ksyms
).
Od različice 2.0.30 je večina dostopna kot nalagalni modul. Če
jih želite uporabiti, morate nastaviti podatke o njih v običajnem
jedru; to se pravi, ne odgovorite ,,y
`` med ,,make
config
``, temveč ,,m
``. Prevedite novo jedro in z njim
zaženite sistem. Potem naredite ,,cd /usr/src/linux
`` in
ukažite ,,make modules
``. To prevede vse module, ki jih
niste že navedli v konfiguraciji jedra, in v imenik
/usr/src/linux/modules
namesti povezave do njih. Uporabite
jih lahko v tem imeniku ali pa izvedete ,,make
modules_install
`` ter jih s tem namestite v imenik
/lib/modules/x.y.z
, kjer je x.y.z
številka izdaje
jedra.
To je lahko še posebno uporabno pri datotečnih sistemih. Morda ne
uporabljate pogosto datotečnih sistemov minix in/ali msdos. Na primer,
kadar dobim dosovsko (brrr) disketo, naredim insmod
/usr/src/linux/modules/msdos.o
, in potem rmmod msdos
, ko
opravim z njo. Ta postopek privarčuje okoli 50 KB RAM v jedru med
normalnim delovanjem. Pri datotečnem sistemu minix ne bo odveč drobna
pripomba: vedno ga podprite neposredno v jedru, da boste lahko
uporabljali ,,reševalne`` diskete.