Firmenbrief

14.03.2011

Tipps vom LIS-Service: Was ist der Kernel und was sind Module?



Frage eines Kunden:

Ich lese immer wieder über den „Kernel" von Linux und über „Module" - was ist das eigentlich genau?

Antwort von unserem LIS-Service:
Der Kernel ist der zentrale Mittelpunkt des Linux-Systems. Im Kernel befinden sich alle Treiber, die das Linux-System unterstützt. Er ist für die Konfiguration, Verwaltung und das Ansteuern der Hardware zuständig. Von dem Chipsatz des Motherboards über die Grafikkarte bis hin zu externen Geräten - einfach alles wird von dem Kernel verwaltet. Daher bestimmt der Kernel auch, welche Hardware-Komponenten von dem System unterstützt werden und welche nicht.

Der Kernel unterscheidet zwei Arten von Modulen (Treibern): Static "linked" und "modular". Vielleicht haben Sie schon mal die Begriffe „Monolithischer" oder „Modularer" Kernel gehört oder gelesen. Der kleine Unterschied zwischen diesen beiden Kerneltypen ist, dass beim monolithischen Kernel die Treiber fest einkompiliert sind und nur mit diesen fest eingebauten Treibern arbeiten kann. Die größten Nachteile hierbei sind, dass Nachladen von Treibern in der Regel nicht möglich ist und dass Treiber im Speicher gehalten werden, gleichgültig, ob diese benötigt werden.

Dieser Kerneltyp wird meist auf sicherheitsrelevanten Systemen eingesetzt, beispielsweise Firewalls.

Moderne Desktop-Systeme hingegen setzen auf einen modularen Kernel, der das Austauschen der Kernelmodule sowie ein Nachladen von Treibern ermöglicht. Die Treiber können vom Start weg geladen oder manuell mit dem Befehl „modprobe/insmod" nachgeladen werden. Auf den aktuellen Desktop-Systemen übernehmen dies die HAL/D-Bus-Prozesse.

Ist beispielsweise eine NVIDIA oder ATI-Grafikkarte in Ihrem PC verbaut, so wird das Modul „ATI Radeon (Generic)" oder „NVIDIA (Generic)" vom Kernel geladen. Geschieht dies nicht, ist die Grafikkarte eventuell zu neu und Sie müssen das Modul selbst nachladen, zum Beispiel mit dem Befehl „modprobe radeon/nv". Durch das Laden des Kernelmoduls wird die Grafikkarte so aktiviert, dass das restliche System die Grafikkarte und dessen erweiterte Funktionen nutzen kann. Darunter fallen beispielsweise die 2D/3D-Beschleunigung sowie eine Auflösung größer als 1024x768.

Tatsächlich ist es sogar so, dass teilweise Geräte nur zu einem gewissen Anteil unterstützt werden, beispielsweise ein Multifunktionsgerät, das Scannen, Faxen und Drucken kann. Hier kann es unter Umständen sein, dass das Faxen funktioniert, man jedoch keine Statusmeldung erhält. Scannen kann beispielsweise mit der minimalen Scan-Tiefe von 300 dpi unterstützt werden, der Druckmodus jedoch vollständig. An dieser Stelle kommen proprietäre Treiber ins Spiel, die es leider nicht von jedem Hersteller gibt und die auch dann vielleicht nur unvollständig die Geräte unterstützen. Auf der sicheren Seite sind Sie, wenn Sie vor dem Gerätekauf prüfen, ob die Linux-Unterstützung funktioniert. Im Rahmen von Projekten übernimmt das natürlich auch gern die LIS AG für Sie.