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 izvorno kodo vašega
jedra kot modutils-x.y.z.tar.gz
; izberite najvišjo številko
različice x.y.z
, ki je enaka ali manjša vašemu jedru.
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 nekaj preprostega, kot, 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 datoteko INSTALL
v tem podimeniku za 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 izgleda
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 ime 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 vsega dostopna kot nalagalni modul. Če
jih želite uporabiti, morate nastaviti podatke o njih v običajnem
jedru; to se pravi, ne rečete ,,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 na njih. Uporabite
jih lahko v tem imeniku ali pa izvedete ,,make
modules_install
`` in 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 z datotečnimi sistemi. 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-a v jedru med
normalnim delovanjem. Pri datotečnem sistemu minix ne bo odveč majhna
pripomba: vedno ga podprite neposredno v jedru, da boste lahko
uporabljali ,,reševalne`` diskete.