Erschienen im Dezember 1995 in de.comp.os.linux

Von einem, der auszieht, das Fürchten zu lehren

Es ist weder zu übersehen, noch zu überhören: Windows95 ist auf dem Markt. Mit einem Medienrummel, dessen Ausmasse bislang Hollywoodprodukten vorbehalten blieb, feiern die einschlägigen Gazetten --- ja, was eigentlich: die Revolution?, die Erlösung der Benutzer von den bisherigen Macken des Systems? Den Berichten über die Blicke hinter die Kulissen zufolge, wohl kaum.

Linux heisst das tapfere Schneiderlein aus dem Internet, das abseits dieses Getöses eine Graswurzelrevolution einleitet. Das Geschehen trägt durchaus märchenhafte Züge. Vor kurzem noch ein Spielzeug für Spezialisten, hat die Entwicklung der freien Software mit Linux einen Punkt erreicht, der so schnell nicht erwartet werden konnte. Es ist zwar nicht das erste, aber bislang das erfolgreichste freie Unix-ähnliche Betriebssystem für IBM-kompatible PCs. Dessen Entwickler haben sich nun entschieden, den kommerziellen Konkurrenten eine ernsthafte Alternative gegenüberzustellen. Diesem Unternehmen kann aus verschiedenen Gründen Erfolg beschieden sein: als Betriebssystem der Unix-Familie kann es nicht nur verschiedene Prozesse gleichzeitig abarbeiten, sondern mehrere Benutzer bedienen; aufbauend auf die lange Tradition freier Software im Unixumfeld, kann es mit umfangreicher Software aufwarten; und letztlich der wohl entscheidende Punkt: sowohl das Betriebssystem als auch die Software sind freie Produkte, also für wenig Geld oder gar umsonst erhältlich.

Die Geschichte der freien Software ist fast so alt wie die Computer selber. Programmierer überlassen der Allgemeinheit ihre Programme zur Verwendung, ohne dafür mehr zu verlangen als die Anerkennung, dass sie diese Programme geschrieben haben. Der Informatiker Donald Knuth, auch bekannt als Autor der drei dicken Bände »The Art of Computer Programming«, deren Sammlung von Algorithmen heute noch zum Standard gehört, entwickelte in den siebziger Jahren einen nach wie vor aktuellen Veteranen dieser Szene: das Textsatzsystem TeX. Die Leistungsfähigkeit von TeX, allein beim Setzen mathematischer Formeln, stellt heute noch die herkömmlichen Textbearbeitungsprogramme in den Schatten. Die Deklaration dieses Programms als Public Domain --- also als öffentliches Eigentum --- hatte in Verbindung mit seiner Leistungsfähigkeit zur Folge, dass es durch die Verbreitung über die Rechenzentren der amerikanischen Universitäten schnell zu einem Standard in der Textverarbeitung wurde.

Zur Geschichte der freien Software gehört ein Traum: der Traum eines freien Betriebssystems. Einer, der ihn um 1983 geträumt hat, war der Mitarbeiter des MIT, Richard Stallman. Seine generelle Unzufriedenheit in der Situation als Computer-Benutzer, sich mit unzureichenden Programmen und einengenden Betriebssystemen auseinandersetzen zu müssen, führte zur Idee von GNU. GNU, einmal mehr ein Akronym, diesmal allerdings rekursiv, steht für GNU's Not Unix. Die Idee war, ein Unix-ähnliches Betriebssystem zu schaffen, das an entscheidenden Stellen besser sein sollte als das vorhandene. Anders jedoch als Knuth, stellte Stallman seine Programme nicht als Public Domain zur Verfügung, da er sein Urheberrecht nicht aufgeben wollte. Das hätte anderen erlaubt, seine Programme zu verändern und dann als eigene Produkte zu verkaufen. Aus dieser Absicht entstand das in der General Public License formulierte Copyleft. Es erlaubt ausdrücklich die uneingeschränkte Verteilung und Verwendung der unter seinem Schutz stehenden Programme. Gleichzeitig stellt es klar, dass Programme, die aus der Veränderung des ursprünglichen Programmtextes entstehen, wiederum unter das Copyleft fallen. Diese Veränderung des Copyrights stellte bislang einen wirksamen Schutz gegenüber Besitzansprüchen und Patentierungsvorhaben dar. 1984 veröffentlichte Stallman ein Manifest mit dem Aufruf, sich an dem Projekt eines freien Betriebssystems zu beteiligen, und erntete regen Zuspruch.

Ein Betriebssystem lässt sich in zwei Teile zerlegen. Einerseits hat es, so die gängige Philosophie, die Komponenten, aus denen der Computer besteht (Tastatur, Bildschirm, Festplatte, Speicher usw.), zu verknüpfen, zu verwalten und dem Benutzer in der Weise darzustellen, dass er sich um Einzelheiten nicht mehr kümmern muss. Andererseits gehören zu einem Betriebssystem verschiedene Dienstprogramme, die es erlauben, Dateien zu erstellen, zu kopieren, zu löschen usw. Während die Ausstattung unter DOS und Windows eher spartanisch ausfällt, gehören Netzwerkfähigkeit, Kommunikationsprogramme und Fensteroberfläche unter Unix zum Standard.

Im Falle von DOS machte Microsoft aus der Not eine Tugend und entwickelte das Betriebssystem in enger Anlehnung an die Hardware der ersten schwachbrüstigen PCs. Die Kinderkrankheiten aus der damaligen Zeit hat man sorgfältig beibehalten, damit das Quick & Dirty Operating System auch auf den alten Prozessoren weiterhin seinen Dienst verrichten kann. Unix hingegen wurde in einem gehörigen Abstand zur Hardware für die damaligen Grossrechner konzipiert. Dieser Abstand erleichterte es, das System auch an andere Umgebungen anzupassen. Sein Leistungshunger, der in erster Linie durch die Fähigkeit zustandekommt, mehrere Benutzer zu bedienen, was das gleichzeitige Abarbeiten mehrerer Programme einschliesst, kann heute jedoch von modernen PCs befriedigt werden.

Die Motive für Stallmanns Arbeit speisen sich aus der Situation des Programmierers. In den siebziger Jahren am MIT aufgehoben in einer Gruppe von Programmierern, die füreinander und miteinander tätig waren, musste er bei deren Auflösung feststellen, dass in der Welt ausserhalb der Labors Kooperation nicht gefragt war. Statt dessen werden nach Rumpelstilzchen-Art wesentliche Informationen zurückgehalten: So scheiterte die Netzwerkfirma Novell mit ihrem DOS 7, weil es als Grundlage für Windows ungeeignet war. Microsoft hatte notwendige Details für das Zusammenspiel von DOS und Windows nicht preisgegeben. Ebenso gehört Besitzstandswahrung um jeden Preis zum Verhaltenskanon der Softwareindustrie. Erinnert sei an den Streit zwischen Apple und Microsoft: Apple versuchte, den Konkurrenten an der Veröffentlichung von Windows, der Nachahmung des Tischlein-deck-dich-Prinzips, mit dem die Apple-Rechner berühmt geworden waren, zu hindern. Der absolute Vorrang dieser Geschäftsinteressen versetzt den Programmierer einerseits in die Rolle des Geheimnisträgers, und andererseits werden seine Arbeitsmöglichkeiten eingeschränkt. Die Rechtsprechung erlaubt es, die Lösung eines Problems auf der Ebene der Software patentieren zu lassen. Auf diese Weise kann anderen untersagt werden, diese Lösung in ihren Programmen zu verwenden. In seinem Manifest formulierte Stallman einen Gegenentwurf zu diesen Verhältnissen. Statt andere Programmierer als Gegner anzusehen, sie zu behindern und einzuschränken, wolle er sie in die Lage versetzen, gemeinsam zu arbeiten und Programme ohne rechtliche Behinderungen miteinander zu teilen. Damit ist die Hauptstossrichtung gegen Softwarepatente festgelegt: sinnvolle technische Lösungen sollen der Allgemeinheit und nicht einem Firmensäckel zugute kommen. So kann z. B. jeder die Innovationen, die mit Linux Einzug gehalten haben, verwenden und verändern und darf diese auch verkaufen, aber das Copyleft schützt diese Neuerungen vor der Vereinnahmung.

Sei das Projekt eines freien Betriebssystems einmal abgeschlossen, so Stallman weiter, könne viel unnötige Arbeitszeit, die momentan z.B. in die vielfache Entwicklung von Betriebssystemen gesteckt wird, eingespart werden. Diese Ersparnis könne dann sinnvoll in die Weiterentwicklung des Standes der Softwaredinge investiert werden. Zudem würden die Anwender durch ein freies Betriebssystem aus der Rolle des Spielballs der Softwareindustrie befreit. Dem Gebot der Betriebssystemhersteller: »Du sollst keine andere Software benutzen als meine«, das sie mit dem Nicht-Einhalten bzw. Nicht-Vereinbaren von Standards untermauern, wäre der Boden entzogen. Ob es dem Charme dieser Aussichten oder der Qualität der GNU-Werkzeuge zu verdanken ist, mag dahingestellt bleiben; jedenfalls entschlossen sich verschiedene Computerfirmen, diesen Plan finanziell und materiell zu unterstützen. Die Utopie Stallmans, dass mit der Fertigstellung von GNU jedem gute Betriebssystemsoftware zur Verfügung stünde, so wie die Luft zum Atmen, rückte damit ein Stück näher.

Mittlerweile wurde für die Koordinierung des GNU-Projekts die Free Software Foundation gegründet, die das ursprüngliche Ziel, ein Betriebssystem für bestimmte leistungsfähige Prozessoren zu schaffen, weiterverfolgt. Der Rahmen dafür ist bereits fertiggestellt. Am Kern des Projekts --- genannt Hurd --- der die Verwaltung der Hardware übernehmen soll, wird noch programmiert. In diese Bresche ist Linux gesprungen, das ohne den Wegbereiter GNU nicht denkbar wäre.

Anfang 1991 begann der finnische Informatikstudent Linus Torvalds mit dem Vorhaben, die Möglichkeiten des Intel 80386 Prozessors auszuprobieren. Innerhalb von sechs Monaten entwickelte er ein minimales Betriebssystem, und im September des gleichen Jahres erschien die Version 0.01 von Linux. Die Publikation im Internet trat eine Lawine los: zahlreiche Freiwillige fanden sich bereit, diesen unansehnlichen Frosch zu küssen, indem sie Teile der Programmierung übernahmen. Es begann ein Prozess der computerisierten Selbstorganisation: bastelte Torvalds in Helsinki zuerst noch selbst an so grundlegenden Dingen wie dem Dateisystem --- der Art und Weise, wie Dateien auf der Festplatte gespeichert werden ---, wurde ihm diese Pflicht später durch Remy Card in Paris abgenommen. In Holland tüftelt Miquel van Smoorenburg an den Programmen, die den Rechner hoch- und wieder herunterfahren können, und in Utah trägt Ron Holt dazu bei, ein Programm zu entwickeln, das die Behinderungen von Windows nachahmt, um Windowsanwendungen auch unter Linux benutzen zu können. Die Liste der Autoren, die bislang zu dem Gelingen von Linux beigetragen haben, kann Seiten füllen. Dieser Erfolg beruht aber nicht nur auf funktionsfähigen Programmen, sondern auch auf jenen Enthusiasten, die sich die Mühe machen, das Projekt zu dokumentieren, indem sie beispielsweise Frage-Antwort-Kataloge, die sogenannten FAQs (Frequently asked questions) zu bestimmten Themen, unterhalten, und sich darum kümmern, auch noch auf die naivsten Fragen eine weiterführende Antwort zu geben. Dabei kennen sich die Autoren untereinander in der Regel nicht persönlich, sondern kommunizieren über E-Mail miteinander, und eine Nachrichtengruppe für Linux bildet das Diskussionsforum für alle Beteiligten.

Man sollte meinen, das Fehlen persönlicher Kontakte müsse die Entwicklung behindern. Das Tempo jedoch, mit dem Linux sich in den letzten vier Jahren gemausert hat, spricht eine andere Sprache. Zum Vergleich: OS/2 schaffte es in immerhin sieben Jahren zur jetzigen Version, die endlich in der Lage ist, die Hardware effizient zu nutzen. Offensichtlich bewirken die Freiheit von firmeninternen Vorgaben und die Möglichkeit, ein Projekt nach bestem Wissen und Gewissen von Grund auf auszuführen, einen wesentlichen Motivationsschub. Das Werkzeug Computer unterstützt den Einzelnen bei seinem eigenverantwortlichen Vorgehen, da der Programmierer für die Herstellung von Software nur drei Dinge benötigt: einen Rechner, einen Editor zum Schreiben des Programmtextes und einen Compiler, der den Programmtext in für den Computer verständliche Anweisungen übersetzt. Wird das fertige Programm auf einem Knotenpunkt des Internets zur Verfügung gestellt, kann es von jedem beliebigen vernetzten Punkt der Erde abgerufen werden. Ein weiterer Anreiz, gute Programme zu schreiben, entsteht auch dadurch, dass unter Unix in der Regel nicht das fertige Programm, sondern nur der Quelltext bereitgestellt wird. Das erlaubt die nachträgliche Anpassung des Programmtextes an die Gegebenheiten vor Ort. Einerseits erhöht sich damit die Chance, dass jemand, der etwas von der Materie versteht, einen Blick auf diese Quellen wirft. Einer wohltuenden Fachsimpelei per E-Mail, wie ein etwaiges Problem besser zu lösen wäre, steht dann nichts mehr im Weg. Andererseits klappern die Fehlermeldungen gleich im elektronischen Briefkasten des Entwicklers, ohne den Umweg über das Sekretariat der Firma zu nehmen. Tatsächlich wiederholt eine Studie der Universität Wisconsin-Madison gerade das Ergebnis von vor fünf Jahren: die GNU- und nun auch die Linux-Programme arbeiten zuverlässiger als die der kommerziellen Anbieter.

Nun kann ein Programmierer noch so viel Spass an guter Arbeit haben, ohne interessierte Benutzer seines Werks wäre er schnell mit seinem Latein am Ende. Dass es jede Menge Interessenten für Linux gibt, kann nur indirekt daraus erschlossen werden, dass die entsprechenden Nachrichtengruppen überquellen, das Linux-Handbuch nur in Deutschland schon die fünfte Auflage innerhalb kürzester Zeit erreicht hat, Fachzeitschriften Linux als Testplattform einbinden und die Menge der angebotenen CD-Roms wöchentlich wächst. Diese Akzeptanz erstaunt umso mehr, als sich keine Marketingabteilung mit Variationen über schneller, schöner, besser zu Linux profiliert, sondern Mundpropaganda im weiteren Sinne für die Ausbreitung sorgt. Wer die Nachrichten zu Linux im Netz liest, wird entweder angesteckt von dem vorherrschenden Enthusiasmus oder abgeschreckt von den Schwierigkeiten. Und obwohl Linux weit entfernt ist von der Fiktion »Anschalten und Loslege«, stürzen sich immer öfter Benutzer in dieses Abenteuer. Dafür sorgt auch der Umstand, dass Linux wenig kostet. Während bei den kommerziellen Betriebssystemen jedes zusätzliche Byte an Software teuer bezahlt werden muss, eröffnet die Vielfalt der mit Linux gelieferten Anwendungen dem Windows- oder OS/2-Benutzer Welten, die er nie zuvor gesehen hat. Die Kosten dafür, in Form einer längeren Einarbeitungszeit, scheinen gerne übernommen zu werden. Anspornend wirkt hier sicherlich das Gebaren der kommerziellen Anbieter, viel zu versprechen und wenig zu halten: Mit schöner Regelmässigkeit folgen den verkauften Programmen Updates genannte Flicken, welche die Fehler im ursprünglichen Programm beseitigen sollen und natürlich ebenfalls zu bezahlen sind.

Nachdem Linux den anfänglichen Ruf losgeworden ist, nur der Zeitvertreib unterbeschäftigter Studenten zu sein, und eine gewisse Verbreitung erreicht hat, beginnen nun auch die Hersteller von Spezialsoftware Anwendungen für Linux zu verkaufen. Die Attraktivität des Systems wird auch dadurch gesteigert, dass es Programmen, die auf anderen Unix-PCs laufen, eine heimatliche Umgebung vorspiegeln kann, so dass sich auch mit diesen arbeiten lässt. Die sich täglich mehrenden Einsatzmöglichkeiten und die Stabilität beginnen langsam, auch Firmen von dieser »preiswerten« Alternative zu überzeugen.

Die Arbeit geht weiter. Anfang 1994 erschien die Version 1.0 von Linux, und die Konformität zum wichtigen POSIX-Standard konnte gemeldet werden. Damit war sichergestellt, dass Programme, die sich an diesen Standard halten, alles vorfinden, was sie zum Ablauf benötigen. Mittlerweile feilen die Entwickler an der Version 1.3. Linux läuft auf Amiga-Rechnern und wird auf Prozessoren der Sparc-, Mips-, und Alpha-Familien portiert. Die Palette der unterstützten Hardware wird nach wie vor beständig erweitert, und über die Vorhaben der Anwendungsentwicklung muss schon penibel Buch geführt werden. Zusammen genommen ergeben die Ansätze von GNU und Linux nach wie vor kein »Plug Play«-System, aber klang das Vorhaben eines freien Betriebssystems am Anfang so unmöglich, wie jenes, dem Teufel seine drei goldenen Haare zu rauben, scheint der Traum nun in greifbare Nähe zu rücken.

Patrick Goltzsch , 1995
Urheberrecht(-links) verbleibt beim Autor. Der Artikel kann als Software im Sinne des GNU Copyleft verstanden werden (Details s. dort).