Il y a de bonnes raisons pour utiliser kerneld
. Voici
les miennes. D'autres peuvent l'utiliser pour d'autres raisons.
- Si vous devez construire des noyaux pour de nombreux
systèmes qui diffèrent peu (par exemple, une marque différente
de carte réseau), alors vous pouvez construire un seul noyau et
des modules, à la place d'avoir à construire un noyau par
système.
- Les modules sont plus faciles à tester pour les
développeurs : il ne faut pas relancer le système pour charger et
enlever le pilote. Ceci s'applique pour tous les modules et non
juste pour ceux qui sont montés par
kerneld
.
- Il réduit l'usage de la mémoire du noyau, ce qui donne
plus de mémoire pour les applications. La mémoire utilisée par
le noyau n'est jamais ``swappée'' sur disque, donc si vous avez
100Ko de pilotes non utilisés compilés dans le noyau, ils
occasionnent simplement une perte de RAM.
- Certaines choses que j'utilise, le pilote
ftape
, par
exemple ou iBCS
, ne sont valables que sous forme de
modules. Mais je ne veux
pas m'embêter avec leur chargement et leur déchargement à chaque
fois que j'en ai besoin.
- Les personnes qui font des distributions Linux ne veulent
pas construire 284 images de boot différentes, chaque
utilisateur charge les pilotes dont il a besoin pour sa
configuration. C'est la méthode retenue par la RedHat 4.0 dans
son installation.
Bien sûr, il y a aussi des raisons pour que vous ne vouliez pas
l'utiliser : vous préfèreriez avoir juste un fichier image de
votre noyau avec tous vos pilotes à l'intérieur. Dans ce cas,
vous lisez le mauvais document.