Dans un précédent article [1] paru dans le numéro 260, nous avions fait connaissance avec le développement noyau du côté de NetBSD. Remettons le couvert aujourd'hui, mais en nous penchant sur OpenBSD qui, de bien des manières et sur bien des plans est drastiquement différent des autres systèmes de la famille des héritiers de l'historique BSD que sont NetBSD, FreeBSD ou en encore DragonFly BSD. À commencer par le fait qu'il n'y a pas de modules kernel (LKM) dans OpenBSD...
Oui, vous avez bien lu, il n'y a pas de support pour le chargement de modules noyau dans OpenBSD. Plus exactement, il n'y a plus de support LKM (Loadable Kernel Modules), car celui-ci a été retiré il y a une dizaine d'années (la manpage disparaît avec OpenBSD 5.7). Pourquoi ? C'est simple, personne parmi les développeurs ne trouvait la fonctionnalité suffisamment utile pour justifier de maintenir le code et s'assurer qu'il fonctionne. C'est parfaitement compréhensible, mais tout de même un peu embêtant lorsqu'on souhaite se pencher sur le développement de pilotes ou, du moins, d'un support pour un périphérique USB avec une intention purement « pédagogique » (au départ).
Mais en réalité, le support LKM n'est que la partie la plus évidente de la modularité d'un noyau. Comme nous l'avons vu avec NetBSD, et c'est également le cas avec FreeBSD par exemple, il est relativement aisé de ne s'occuper que de son petit développement, un peu à la manière de faire...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première