Login
Login-Name Passwort


 
Newsletter
Werbung

Mi, 15. August 2012, 15:17

Software::Systemverwaltung

Linux Kernel-Backports: Neue Treiber für alte Kernel

Im Rahmen des Linux Kernel Backporting-Projekts erstellt ein Entwicklerteam eine Abstraktionsschicht, die eine Kombination aus neuen Treibern und alten Kerneln ermöglichen soll. Eine erste offizielle Version soll bereits bei der Freigabe von Linxu 3.7-rc1 erscheinen.

Larry Ewing

Die Anbindung von neuen Komponenten gestaltet sich unter Linux nicht immer reibungslos. Nutzt der Anwender eine Hardware, die neuer als der eingesetzte Kernel ist, so sinkt die Wahrscheinlichkeit, dass seine Komponente auch in dem eingesetzten Kernel unterstützt wird. Zwar ist es durchaus vorstellbar, dass den Anwendern in solch einem Fall eine Aktualisierung des Kernels helfen würde, doch nutzen Anwender in den seltensten Fällen selbst compilierte Kernel. Erschwerend kommt noch hinzu, dass der Einsatz von Treibern neuer Kernel in älteren Kernelversionen oft nicht ohne Änderungen möglich ist. Schuld daran ist der Entwicklungszyklus des Kernels, der vorsieht, dass alle Treiber immer an die neuesten Schnittstellen angepasst werden. Hat sich das API geändert, was in der Praxis nicht selten vorkommt, lässt sich ein neuer Treiber oft unter älteren Versionen nicht mehr compilieren. Eine Rückportierung ist notwendig – für Distributoren die einzige Möglichkeit, um Korrekturen oder Neuerungen auch in alten Kerneln verfügbar zu machen.

Im Rahmen des neuen Linux Kernel Backporting-Projekts plant nun eine Gruppe von Entwicklern, die Rückportierung der Treiber zu vereinfachen. Die Entwickler des Projektes sind sich im Klaren, dass auch künftig neue Entwicklungen in den aktuellen Kernel einfließen werden und es den Autoren des Kernels nur selten zuzumuten ist, Funktionen auch dediziert für alte, noch offiziell unterstützte Kernelversionen zu portieren. Um das Problem zu lösen, soll deshalb eine Abstraktionssicht entstehen, die zwischen den älteren Kerneln und den neuen Treibern vermittelt. Technisch gesehen handelt es sich dabei um eine Bibliothek, die neuen Kernel-Modulen die Symbole oder Header-Dateien bereitstellt, die sie benötigen. Oftmals werden dabei die unpassenden Stellen im Kernel durch statische Inline-Funktionen nachgebildet, was keinerlei Auswirkungen auf den Treiber selbst hat. Der Satz an Funktionen soll dabei so groß ausfallen, dass im Idealfall keinerlei Änderungen an Treibern selbst vorzunehmen sind.

Das Vorhaben der Schaltung einer Schicht zwischen neue Treiber und alte Kernel ist nicht neu. So bietet beispielsweise das Compat-Wireless-Projekt schon sei längerem spezielle Treiber an, die dem aktuellen Kernel entstammen und mittels einer Bibliothek auf älteren Kerneln genutzt werden können. Mittlerweile unterstützt das Projekt nicht nur WLAN, sondern auch diverse Netzwerk- und Bluetooth-Treiber. Weitere Anpassungen der Kompatibilitätsschicht sind im Gange und sollen unter anderem auch eine Rückportierung der Grafiktreiber des Linux-Kernels ermöglichen. Doch gänzlich ohne Änderungen der involvierten Treiber kommt das Projekt auch nicht aus.

Gerade auf die Vorarbeit des Compat-Wireless-Projektes setzt auch das Linux Kernel Backporting Project auf. Streng genommen handelt es sich sogar um dasselbe Projekt - sowohl die Wireless- als auch die generische Version werden maßgeblich von Luis R. Rodriguez entwickelt. Wie der Programmierer schreibt, erreichte das alte Projekt allerdings eine Funktionalität, die nicht mehr mit dem alten Namen vereinbar war und die Aufnahme von weiteren Partnern erforderte. Mit Erfolg. So signalisierten beispielsweise neben der Linux Foundation auch diverse Firmen ihre Bereitschaft, dem Projekt unter die Arme zu greifen und das Vorhaben vorantreiben zu wollen.

Eine erste Version der Treiber soll laut Aussage von Rodriguez erscheinen, sobald der offizielle Linux-Kernel die Version 3.7-rc1 erreicht hat. Fortan plant das Team regelmäßige Aktualisierungen auf Basis der kommenden (linux-next) und der aktuellen stabilen Version des Kernels (linux-stable).

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung