83644

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 von SIS programmierten SASA-Treiber. Drittens können schließlich auch Lizenzprobleme und die strenge Auslegung der GPL (GNU General Public License) verhindern, dass ein Treiber standardmäßig in den Kernel integriert wird und dann direkt nach der Installation allen Linux-Distributionen zur Verfügung steht.

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 Scanner-Treiber des Sane-Projektes oder die Grafikkartentreiber von XFree beziehungsweise Xorg.

PC-WELT Marktplatz

83644