Loadable Kernel Module

Loadable Kernel Module

Dans un système d'exploitation, un module est une partie du noyau qui peut être intégrée pendant son fonctionnement. Le terme anglais généralement employé pour les désigner est Loadable Kernel Module, abrégé LKM, ou en français : « module de noyau chargeable ».

Cette fonctionnalité existe dans les noyaux Linux et les noyaux BSD.

C'est une alternative aux fonctionnalités compilées dans le noyau, qui ne peuvent être modifiées qu'en relançant le système.


Sommaire

Linux

Les modules du noyau Linux sont généralement placés dans /lib/modules. Ils utilisent l'extension .ko depuis la version 2.6.

La commande depmod génère les fichiers de dépendances. Ces fichiers permettront entre autres à la commande modprobe de charger automatiquement tous les modules nécessaires lors de l'intégration d'un module dans le noyau.

Sur certains systèmes, notamment la distribution Debian, ces fichiers sont générés à chaque démarrage pour maintenir les dépendances à jour.[réf. nécessaire]

Les modules peuvent être retirés du noyau à tout moment tant qu'ils ne sont pas utilisés.

Les commandes lsmod, insmod et rmmod permettent d'effectuer les opérations de base sur les modules.

Dans certaines distributions Linux récentes, le chargement des modules est automatique lorsque le système en a besoin ou qu'il détecte un nouveau périphérique.

Compatibilité des modules binaires

Linux ne fournit pas d'interface stable (API ou ABI) pour les modules du noyau. D'une version à l'autre du noyau il peut donc y avoir des différences structurelles ou fonctionnelles qui peuvent rompre la compatibilité avec les modules existants. Pour limiter ces inconvénients, des informations de version sont placées dans la section .modinfo des modules qui pleuvent être comparées à la version du noyau cible pour empêcher le chargement de modules non compatibles.

Considérations juridiques

La licence GNU GPL qui régit le noyau Linux implique que tout travail dérivé soit placé sous cette même licence. Les mainteneurs du noyau considèrent que, sauf exception, les modules du noyau sont des travaux dérivés et comme tels soumis à la licence GNU GPL. Linus Torvalds a ainsi exprimé qu'il pouvait exister de rares exceptions : typiquement si le pilote d'un autre système d'exploitation était adapté pour fonctionner sous Linux, il lui semble difficile de qualifier le travail en résultant de « travail dérivé de Linux »[1].

Le symbole d'exportation du noyau permet de spécifier la licence des modules qui interagissent, par exemple dans le cas de EXPORT_SYMBOL_GPL, le module sera marqué de cette façon : MODULE_LICENSE("GPL"). Pour Linus Torvalds, cette précision n'a pas de valeur que descriptive mais aussi juridique[2].

Notes et références

Liens internes

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Loadable Kernel Module de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • Loadable kernel module — In computing, a loadable kernel module (or LKM) is an object file that contains code to extend the running kernel, or so called base kernel, of an operating system. Most current Unix like systems, and Microsoft Windows, support loadable kernel… …   Wikipedia

  • Kernel-based Virtual Machine — Infobox Software name = Kernel based Virtual Machine logo = caption = Screenshot of the Windows XP boot up process in a qemu/kvm window in Fedora 7. developer = latest release version = 75 latest release date = release date|2008|09|10 operating… …   Wikipedia

  • Module — A module is a self contained component of a system, which has a well defined interface to the other components; something is modular if it includes or uses modules which can be interchanged as units without disassembly of the module. Design,… …   Wikipedia

  • Kernel-Modul — Ein Kernel Modul (kurz „LKM“ für englisch: „loadable kernel module“) ist ein spezielles Computerprogramm, das im laufenden Betrieb in den Kernel eines Betriebssystems geladen und wieder daraus entfernt werden kann. Kernel Module werden häufig für …   Deutsch Wikipedia

  • Module (disambiguation) — Contents 1 Computing and engineering 2 Science and mathematics 3 Music …   Wikipedia

  • Monolithic kernel — Structure of monolithic kernel, microkernel and hybrid kernel based operating systems A monolithic kernel is an operating system architecture where the entire operating system is working in the kernel space and alone as supervisor mode. The… …   Wikipedia

  • Linux kernel — Linux Linux kernel 3.0.0 booting Company / developer Linus Torvalds and thousands …   Wikipedia

  • NetWare Loadable Module — Filename extension .nlm Magic number NetWare Loadable Module Developed by Novell Type of format Executable, Shared library A NetWare Loadable Module (NLM) is a binary code module that can be loaded into …   Wikipedia

  • Device driver — Operating systems Common features …   Wikipedia

  • Загружаемый модуль ядра — (loadable kernel module, LKM)  в информатике  объектный файл, содержащий код, расширяющий возможности ядра операционной системы. Модули используются, чтобы добавить поддержку нового оборудования или файловых систем или для добавления… …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”