Der Kern der Wahrheit
3. Newsletter: Mai 2006
Das 1983 von Richard Stallman ins Leben gerufene freie
Betriebssystemprojekt GNU wurde in kurzer Zeit zu einem Sammelbecken vieler einzelner
Programme und Komponenten. Anfang der 1990er Jahre war das GNU-System nahezu
vollständig und das Ziel, ein unix-ähnliches, aber völlig freies Betriebssystem zu schaffen, fast
erreicht. Die einzige wesentliche Komponente, die noch fehlte, war ein Betriebssystemkern.
Dieser so genannte Kernel ist
der zentrale Bestandteil eines Betriebssystems. Eine Art Cockpit oder
Kommandozentrale. Ein Betriebssystemkern stellt in erster Linie den Programmen Schnittstellen
zur Verfügung, um auf die Hardware zugreifen zu können. Zudem kontrolliert der
Kernel den Zugriff auf den Prozessor, erledigt die Speicher- und
Prozessverwaltung, steuert das Mehrbenutzersystem, verwaltet die Gerätetreiber
und strukturiert die Ressourcen. Auf der Suche nach einem geeigneten Kernel für
das GNU-Projekt fiel zunächst die Wahl auf den Microkernel Mach. Doch dazu sollte
es nicht kommen.
Freax oder doch besser „Linux“
Wie so oft stand auch am Beginn dieser Freien Software Geschichte ein praktisches Problem. Linus Torvalds, Informatikstudent aus Helsinki, hatte sich 1991 einen brandneuen PC mit einem 386er-Prozessor gekauft, der erstmals auch echten Speicherschutz und Multitasking anbot. Als Benutzer des Betriebssystems Minix, ein Unix-Derivat für 286er PCs, konnte Torvalds aber nicht alle neuen Möglichkeiten auf dem neuen PC voll nützen. Um das Problem zu lösen, begann er einen neuen unixartigen Betriebssystemskern zu schreiben. Den Quelltext seiner Arbeit veröffentlichte er im Internet und lud die Minix-Usenet-Gruppe zur Mitarbeit ein. Bereits im September desselben Jahres sollte Torvalds’ Kernel auf einem Server für alle interessierten PC-Freaks zur Verfügung gestellt werden. Doch der Server-Administrator war mit dem von Torvalds angegebenen Namen „Freax“ nicht einverstanden und stellte Torvalds’ Programm in ein Verzeichnis mit dem Namen "Linux".
Torvalds’ Entwicklungsmodell
Im Januar 1992 lag bereits die erste stabile Linux-Kernel Version 0.12 unter der vom GNU-Projekt übernommenen GPL-Lizenz vor. Um eine Aufspaltung (Code-Forking) des Kernel-Projektes in verschiedene Geschmacksrichtungen zu verhindern, etablierte sich auf der Basis der GPL Lizenz und unter der weithin akzeptierten Autorität von Linus Torvalds ein Entwicklungsmodell, wonach bestimmte Programmierer als eine Art Projektleiter für Teilbereiche des Kerns zuständig waren. Diesen so genannten Maintainers arbeiteten eine große Zahl von Programmierern und Nutzern in Form von Core-Teams zu. Sie testeten die Kernelversionen, meldeten Fehler (bugs), behoben sie, fügten Änderungen (patches) hinzu und tauschten sich dabei über Mailinglisten und Foren aus. Linux wurde so ein Paradebeispiel für eine Organisationsform, bei der Tausende von Menschen in der ganzen Welt in einer verteilten, offenen und locker gekoppelten Zusammenarbeit ein komplexes Softwareprojekt entwickeln. Was Eric Raymond, ein bekannter wie gleichwohl umstrittener Vertreter der Freien Software-Szene, zur Feststellung bewog, „dass Torvalds’ cleverster und erfolgreichster Hack nicht der Entwurf des Linux-Kernels selbst war, sondern vielmehr seine Erfindung des Linux-Entwicklungsmodells“.
Ein Kernel macht noch keinen Sommer
Da man aber mit einem Kernel allein wenig anfangen kann, benutzte die wachsende Community den Linux-Kernel zusammen mit weiteren Komponenten aus dem GNU-Projekt. Damit begann die Erfolgsgeschichte des GNU/Linux-Systems, das inzwischen auf Zig-Millionen Hardware-Architekturen portiert wurde. Nach den Hochburgen Europa und den USA eroberte GNU/Linux in den letzten Jahren auch den pazifisch-asiatischen Raum, von Japan über China bis Indien. Auch in Wirtschaftskreisen und öffentlichen Verwaltungen hat GNU/Linux Popularität erlangt und ist heute der klare Marktführer im Serverbereich. Zu Großanwendern von GNU/Linux zählen Unternehmen wie Edeka, Sixt, Debis und Ikea, aber auch die Server von Wikipedia oder Google laufen mit GNU/Linux.
Im praktischen Einsatz werden
meist GNU/Linux-Softwarepakete, so genannte Distributionen, genutzt.
Mittlerweile gibt es für fast jeden Zweck die passende Distribution. Mehr dazu
aber erst im nächsten Newsletter.