Login
Login-Name Passwort


 
Newsletter
Werbung

So, 7. April 2002, 00:00

Kernel-Visionen

Der Linux-Kernel befindet sich in stetiger Entwicklung. Dieser Artikel möchte, neben einem kurzen Rückblick auf die Probleme mit dem 2.4er Kernel im Herbst, die aktuelle Entwicklungslage schildern. Unser Augenmerk richten wir insbesondere auf den neuen Kernel und werden der Frage nachgehen, mit welchen Neuerungen wir in Zukunft rechnen können.


Das Problemkind 2.4

Wer im vergangenen Herbst fleißig die Kernel-News verfolgte, konnte feststellen, dass mit dem 2.4-er Kernel damals einiges im Argen lag. Der Kernel hatte von Update zu Update neue, zum Teil arge Bugs und viele Leute aus der Linux-Community kritisierten, Linus' Kernelpolitik sei unverantwortlich. Tatsächlich hatte der Maintainer, nachdem sich viele Leute über die unwirtschaftliche Speicherausnutzung des 2.4er beschwert hatten, in einem Atemzug die komplette VM ausgetauscht. Die VM (von Virtual Memory) ist eine Komponente des RAM-Speichermanagements, die dafür sorgt, dass der Inhalt des Arbeitsspeichers bei Auslastung auf die Festplatte ausgelagert wird. Dieses sogenannte "Swappen" betrieb der damalige 2.4er häufig schon, wenn auch noch viel Arbeitsspeicher frei war. Nachdem nach mehreren Patches dieses Verhalten der VM nicht zufriedenstellend geändert werden konnte, nahm Linus eine von Andrea Arcangeli komplett neu geschriebene VM und wechselte diese in den stabilen Kernel-Baum ein. Für gewöhnlich werden solche tief in das System eingreifende Veränderungen aus gutem Grund nicht an stabilen Kernel-Bäumen vorgenommen. Zu groß sind die Risiken, dass der neue Code einen Rattenschwanz an Problemen, ungewollten Interaktionen und Inkompatibilitäten nach sich zieht. Nicht in direktem Zusammenhang mit dem Austausch der VM stehen diese folgenden Kernel-Bugs, die die Community ebenfalls auf eine harte Probe stellten. Im Oktober gab Linus den 2.4.11er frei. Ein Programmier-Fehler im Dateisystem-Management, der beim Anlegen bestimmter Symlinks zu Dateikorruption führen konnte, war Grund dafür, dass Linus den Kernel wenige Tage später zurückzog und dieser seitdem als 2.4.11-dontuse sein ungenutztes Dasein auf dem Kernel-Server fristet. Ein anderes Mal verärgerte ein Bug im Loop-Device die Anwender. Das Loop-Device ermöglicht es, Dateisystem-Images zu mounten, wie z.B. die oft beim Brennen von CDs verwendeten ISO-Images. Nach einem Patch der VM waren wohl auch im Bereich des Loop-Devices Veränderungen vorgenommen worden, die dafür sorgten, dass der entsprechende Kernel mit aktiviertem Loop-Device gar nicht kompiliert werden konnte. Ein folgender Kernel akzeptierte plötzlich die ALSA-Module, die in vielen modernen Distributionen die Soundausgabe steuern, nicht mehr. Diese und weitere Probleme sorgten dafür, dass Linus viel länger an dem Kernel arbeiten musste, als er sich gewünscht hätte.

Alles wird gut

Seit dem Kernel 2.4.15, der Ende November von Linus freigegeben wurde, ist nun der Teenager Marcelo Tosatti neuer Maintainer des 2.4er Kernels. Für sein junges Alter beweist Marcelo ein gutes Händchen beim Einfügen der Kernel-Patches, und mit seiner Entscheidung, nach jedem abschließenden Kernel-Patch eine Testphase in Form eines Release-andidaten herauszugeben, hat er sich viel Lob eingebracht. Die letzten beiden von Marcelo freigegebenen Kernel-Versionen haben sich im großen und ganzen als zuverlässig und stabil erwiesen und langsam legt sich die Verärgerung in der Community. Damit das auf Sicherheit und Stabilität ausgelegte Arbeiten Marcelos besondere Updates und Neuerungen für den 2.4er nicht blockiert, hat sich der Kernel-Hacker Michael Cohen inzwischen dazu bereit erklärt, einen Kernel-Zweig parallel zum offiziellen zu führen. In diesem können kritische Updates und Verbesserungen auf ihre Tauglichkeit getestet werden, ohne die Stabilität des eigentlichen Kernels aufs Spiel setzen zu müssen. Linus indessen konzentriert sich auf seinen Fachbereich, der ihn mehr fordert, als stabile Kernels zu überwachen: Er führt jetzt den Entwickler-Kernel. Linus' Qualitäten liegen in Forschung, Entwicklung und Problemlösung.

Neuer Kernel, neue Features

Die Kernel-Entwickler auf dem Summit in San Jose, (c) Photo: Chris J. DiBona

Philipp Poll

Die Kernel-Entwickler auf dem Summit in San Jose, (c) Photo: Chris J. DiBona

Im März des letzten Jahres fand das sogenannte "Kernel Summit" in San Jose, Kalifornien statt. Insgesamt 65 Sachverständige und Kernel-Entwickler trafen sich, um die Ziele für den Entwickler-Kernel festzustecken. Seitdem gibt es eine mehr oder weniger offizielle Liste an nötigen Änderungen, Neukonzeptionen und Erweiterungen. Im High-End-Bereich beginnt die Hardware inzwischen schon wieder, die Fähigkeiten des Linux-Kernels auszureizen. Speichergröße und Gerätezahlen sind im Kernel auf bestimmte Werte limitiert, diese Grenzen müssen nun wieder erweitert werden. Ein weiteres Ziel der Entwickler sind Performance-Verbesserungen in verschiedensten Kernel-Bereichen. Viele Veränderungen im neuen Kernel betreffen besonders die Server- und High-End-Branche. Natürlich profitiert aber auch der Desktop-Bereich von Performance-Steigerungen. Folgendes sind die Punkte, die auf der Liste der Entwickler stehen. Viele davon sind bereits in der Umsetzung.

Die Geräte-Nummerierung, die unter Linux verwendet wird und aus einer Major- und einer Minor-Nummer besteht, muss erweitert werden, da moderne Server bereits mehr Geräte ansprechen können, als mit den bisher vorhandenen Geräte-Nummern möglich ist. Parallel zu dem unter dem Codewort "kdev_t" stattfindenden Erweiterungs-Projekt der Geräte-Nummerierung, ist bereits eine völlig neue Variante zum Ansprechen der Hardware in der Entwicklung. Das sogenannte "Device-File-System" (devfs) stellt in einem virtuellen Dateisystem alle Geräte zur Verfügung, die tatsächlich auf dem Rechner existieren und macht damit die Geräte-Nummerierung sowie die tausenden ungenutzten Einträge im /dev-Verzeichnis überflüssig. Dieser Art der Geräte-Bereitstellung gehört die Zukunft im Linux-Sektor. Trotzdem wird die Geräte-Nummerierung im nächsten Kernel wohl noch die dominante Rolle spielen. Immerhin solange, bis das Device-File-System ausgereift ist und sich als stabil und zuverlässig erwiesen haben wird. Ein paar aktuelle Desktop-Distributionen setzen bereits auf das DevFS, so z.B. die Mandrake 8.2. Sie nutzen dazu den Backport aus dem Entwickler-Kernel, der auch schon seit längerer Zeit als experimentelle Option im stabilen Kernel enthalten ist.

Kommentare (Insgesamt: 0 || Kommentieren )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung