Moduly a jadro

Cejka Rudolf cejkar at dcse.fee.vutbr.cz
Fri Feb 4 08:55:00 CET 2000


Radek Skokan wrote (2000/02/04):
> zajimalo by me, jak je to ve FreeBSD s moduly. V The Complete FreeBSD
> (T.C.F.) jsem
> se jen docetl, ze driv byly LKM, ted jsou kld. Jak se daji vytvaret? Myslim,
> jako kdyz si v Linuxu kompiluju jadro, dam neco jako modul a pak udelam make
> .... modules modules_install. Kde je nejaky konfiguracek ridici zavadeni

LKM uz prestaly vyhovovat (LKM vznikalo jeste kdyz si Linux o modulech
nechaval jen zdat), tak vyrobili KLD s dynamickym linkerem v jadre.

Prakticky nema smysl slozite urcovat, ktery modul chci zkompilovat nebo
nechci - to by byla jen zbytecna ztrata casu a zdroj komplikaci (treba
v pripade, ze by nekdo pouzival vic ruznych jader najednou, ale to ted
nema cenu rozepisovat). Proto je ve FreeBSD zvykem kompilovat a instalovat
vzdy vsechny moduly. Staci tedy udelat:
	cd /usr/src/sys/modules ; make ; make install ; make clean

> modulu? Nebo to vsechno zajistuje jadro samo? Jak dlouho je modul zaveden do
> pameti kdyz se mi tam zavede automaticky?

Doporucuji prostudovat /boot/defaults/loader.conf a radky s XXX_load.
Vlastni modifikace se pak delaji do /boot/loader.conf (stejne jako
u /etc/rc.conf).

Moduly v pameti zustavaji natrvalo - stejne je to jen par kilobajtu.

[Kdyby nekdo jazyk loaderu ovladal nebo vedel, z ceho je mozne se ho
naucit, tak uvitam kazdou radu.]

> A jeste mam nejasnosti v kompilaci jadra. Docela mi na tom vadi ten zpusob,
> ze musim rucne editovat soubor. Protoze jsem v FreeBSD uplny zacatecnik, na
> jedne konzoly mam vypis GENERIC, jinde LINT, Handbook, T.C.F. a stejne si
> myslim, ze to ma urcite vic moznych parametru a ani u tech, co tu mam neni
> 100% komentar. Opet by mi pomohlo neco na zpusob Linuxu.

Je to spis ve zvyku. Mozna je fakt, ze neco jako "make menuconfig" by se
hodilo, ale editace textovych souboru ma take sve vyhody. Ve FreeBSD
vim, ze mi nic neutece. V Linuxu jsem naopak mel dojem, ze nejakou
kategorii nepotrebuji a ejhle - najednou jsem nedostal na vyber neco,
co jsem potreboval. Proste oba zpusoby maji sva plus a minus.

Volby neni treba znat nazpamet. Nejlepsi je asi vzit GENERIC, ten
zkopirovat do sveho souboru - napriklad do USER a v tomto souboru
zacit provadet editace. Ve vi si pak do druheho okenka zobrazim LINT
(:E LINT a mezi okenky lze prechazet pomoci ^W - kdyby nahodou...).
A jelikoz v LINTu jsou vsechny mozne volby i s komentari, proste
si procitam LINT a sem tam nejaky radek v USER zakomentuji, sem tam
nejaky z LINTu prekopiruji. Neni to tak slozite.

A pak kdyz chci USER konfiguraci udrzovat aktualni, udelam si diff
mezi puvodnim a novym LINTem (nejlepe s ignorovanim white-space)
a zmeny zanesu i do USER.

-- 
Rudolf Cejka   (cejkar at dcse.fee.vutbr.cz;  http://www.fee.vutbr.cz/~cejkar)
Brno University of Technology, Faculty of El. Engineering and Comp. Science
Bozetechova 2, 612 66  Brno, Czech Republic



More information about the Users-l mailing list