Zum Hauptinhalt Zur Navigation

Linux-Treiber laufen im Userspace

Geringer Teil des Treibers bleibt im Kernel selbst. Ein Patch im aktuellen Linux-Kernel-Entwicklungszweig führt ein neues Modell zur Treiberentwicklung ein. Nur kleine Teile eines Hardware-Treibers gelangen dabei noch in den Kernel selbst, der Hauptteil kann im Userspace laufen. So können auch proprietäre Treiber angeboten werden.
/ Julius Stiebert
39 Kommentare News folgen (öffnet im neuen Fenster)

Mit Userspace-I/O (UIO) wurde ein Modell in den Entwicklungszweig für den Linux-Kernel 2.6.23 aufgenommen(öffnet im neuen Fenster) , bei dem ein Großteil der Funktionen im Userspace liegt. Direkt für den Kernel ist nur noch ein sehr kleiner Treiber nötig, der mit den Interrupts umgeht. Andere Funktionen können durch das Userspace-Programm erfolgen, das hierfür Sysfs und eine Gerätedatei nutzt.

Damit können auch die Hauptfunktionen in einem proprietären Programm stecken, während nur die Kernel-Schnittstelle unter der GPL veröffentlicht werden muss. Dabei ist auch von Vorteil, dass diese Schnittstelle stabil bleiben kann und Änderungen am Treiber bei neuen Kernel-Versionen nicht nötig werden. Heute ist es bei proprietären Kernel-Treibern häufig der Fall, dass diese nicht mehr funktionieren, wenn ein neuer Kernel API-Änderungen enthält. Fehler im Treiber würden außerdem nicht zu einem Absturz des Kernels führen.

Eine Dokumentation sowie ein Beispieltreiber wurden ebenfalls integriert.


Relevante Themen