Know-how: Die richtige Hardware für Linux

Kleine Treiberkunde - Kernelspace und Userspace

Treiber sind das A und O bei der Hardware-Unterstützung. Die besten und unproblematischsten Treiber sind jene, die den Weg in den Linux-Kernel geschafft haben. Diese Open-Source-Treiber laufen im Kernelspace, dem für den Kernel reservierten Bereich im Arbeitsspeicher. Dazu gehören beispielsweise die Treiber für Prozessoren, Mainboard-Chipsätze, Storage-Adapter, ISDN-, Sound- und Netzwerkkarten. Bei der Installation einer Linux-Distribution werden die Treiber automatisch eingerichtet, jedes Update bringt neue Treiber mit.

Im Kernel sind allerdings nur die unter Open-Source-Lizenzen stehenden Treiber enthalten. Das hat zur Folge dass viele Treiber fehlen. Denn zum einen klafft eine zeitliche Lücke zwischen Treiberentwicklung und Kernel-Updates. Zum zweiten lehnen Kernel-Entwickler Treiber auch aus Qualitätsgründen ab, wie etwa den kürzlich von SIS programmierten SASA-Treiber. Drittens können schließlich auch Lizenzprobleme verhindern, dass ein Treiber in den Kernel integriert wird.

Wollen Sie selbst einen Treiber in den Kernel integrieren, sind die Kernel-Module passend zu kompilieren. Dafür sind die Kernelsourcen erforderlich. Sie müssen vom Installationsmedium der Distribution nachinstalliert werden, falls sie es nicht schon sind. Fortgeschrittene Linux-Kenntnisse sind hier unabdingbar. Zudem ist in der Regel eine Neuinstallation des Treibers nach jeder Aktualisierung des Kernels fällig.

Die zweite Gruppe von Treibern ist unabhängig vom Kernel, sie laufen nicht im zentralen Kernelspace, sondern außerhalb im Userspace. Diese Treiber kommunizieren über standardisierte Schnittstellen wie USB- oder Parallel-Port mit dem Betriebssystem. Dazu gehören etwa die Scannertreiber des Sane-Projektes oder die Grafikkartentreiber von XFree bzw. Xorg.