Kernelmodul: Unterschied zwischen den Versionen

Aus Mikiwiki
Wechseln zu: Navigation, Suche
Zeile 19: Zeile 19:
 
{{cat|Betriebssystem}}
 
{{cat|Betriebssystem}}
 
{{cat|Kernel}}
 
{{cat|Kernel}}
 +
{{cat|Kernelmodul}}

Version vom 9. August 2009, 13:34 Uhr

Ein Kernelmodul (auch: Kernel-Modul; engl. loadable kernel module / LKM) ist besonderer Programmcode, der zwecks Funktionserweiterung (z. B. Hardware-Unterstützung) im laufenden Betrieb in den Kernel eines Betriebssystems geladen oder wieder daraus entfernt werden kann. Häufig finden Kernelmodule für Gerätetreiber Verwendung, da so eine grosse Auswahl Kernelmodule für die unterschiedlichsten Hardwarekomponenten mit dem Betriebssystem mitgeliefert werden können, aber nur die wirklich benötigten Treiber in den Arbeitsspeicher geladen werden müssen.

Kernelmodule gibt es bei verschiedenen Betriebssystemen, beispielsweise Linux, BSD oder Solaris.

Kernelmodule unter Linux

Beim Linux-Kernel wird das Verfahren des dynamischen Hinzufügens von Kernelmodulen dazu verwendet, um einen Standardkernel an die Hardware, auf der er betrieben wird, dynamisch anzupassen. Beispielsweise kann der Treiber einer vorgefundenen Audiokarte geladen werden, während die vorliegenden Treiber für nicht vorhandene Audiokarten ignoriert werden und somit auch keinen Platz im Arbeitsspeicher belegen. So können Erweiterungen für den Kernel integriert werden können, ohne dass das Betriebssystem neu gestartet werden muss. Ebenso kann etwa der als Kernelmodul realisierte Treiber einer Audiokarte entfernt und eine neuere Version dieses Treibers in das laufende System eingebunden werden.

Alle gängigen Linux-Distributionen starten Kernelmodule automatisch (z. B. das Modul "isofs" beim Einhängen einer CD-ROM, um das ISO 9660-Dateisystem zu lesen). Die Kernelmodule stehen jeweils im Verzeichnis "/lib/modules/Kernelversionsnummer". Die tatsächlich eingebundenen Kernelmodule sind in der Datei Verzeichnis "/proc/modules" zu finden.

Der Shell-Befehl lsmod zeigt alle aktuell im Linux-Kernel integrierten Kernelmodule.

Weblinks

Vorlage:Weblinks1