Zum Inhalt springen

Linux-Praxisbuch/ Abstellraum/ Richard Stallman: Linux und das GNU-Projekt

Aus Wikibooks

< Abstellraum Eigentlich heißt nur der Kernel Linux. Dieser wird jedoch erst durch eine umfangreiche Systemsoftware verwendbar. Ein Großteil der für den Linux-Kern verfügbaren Systemsoftware wird vom GNU-Projekt bereitgestellt. Häufig wird daher auch dafür plädiert, statt von Linux besser von GNU/Linux zu sprechen. Hierzu gibt es ein Statement des GNU-Projekt-Gründers Richard Stallman, das im Folgenden zitiert werden soll.

Das Original dieses Textes findet sich unter http://www.gnu.org/gnu/linux-and-gnu.de.html.


Linux und das GNU-Projekt

von Richard Stallman

Viele Computer-Benutzer benutzen täglich, ohne es zu wissen, eine modifizierte Version des GNU-Systems. Durch eine eigenartige Wendung von Ereignissen ist die heute weit verbreitete Version von GNU meist unter dem Namen Linux bekannt und viele Benutzer sind sich des Ausmaßes der Verbindung mit dem GNU-Projekt nicht bewusst.

Es gibt wirklich ein Linux, und die Leute benutzen es, aber es ist nicht das Betriebssystem. Linux ist der Kernel: Das Programm im System, das die Systemresourcen den anderen laufenden Programmen zuordnet. Der Kernel ist ein wichtiger Teil eines Betriebssystems, aber allein nutzlos; er kann nur im Zusammenhang mit einem kompletten Betriebssystem funktionieren. Linux wird normalerweise in einer Kombination mit dem GNU-Betriebssystem benutzt: Das ganze System ist im Grunde GNU, wobei Linux als Kernel zum Einsatz kommt.

Viele Benutzer sind sich nicht völlig über die Unterscheidung zwischen dem Kernel, welcher Linux ist, und dem ganzen System, das sie auch Linux nennen, bewusst. Diese zweideutige Benutzung des Namens begünstigt das Verstehen nicht gerade. Diese Benutzer denken oftmals, dass das ganze Betriebssystem 1991 von Linus Torvalds, mit ein bisschen Hilfe, entwickelt wurde.

Programmierer wissen gewöhnlich, dass Linux ein Kernel ist. Seit sie aber gehört haben, dass das ganze System generell auch Linux genannt wurde, stellen sie sich eine Geschichte vor, die das Benennen des ganzen Systems nach dem Kernel rechtfertigen würde. Zum Beispiel glauben viele, dass, als Linus Torvalds Linux einmal fertig hatte, sich seine Benutzer nach anderer freier Software zum Mitbenutzen umguckten, und fanden, dass (ohne besonderen Grund) fast alles Nötige, um ein Unix-artiges System anzufertigen, bereits verfügbar war.

Was sie fanden, war kein Zufall -- es war das GNU-System. Die verfügbare freie Software konnte zu einem kompletten System zusammengefügt werden, weil das GNU-Projekt seit 1984 daran arbeitet, eins zu erschaffen. Das GNU-Manifest hatte das Ziel der Entwicklung eines freien Unix-artigen Systems, GNU genannt, festgelegt. Die Anfängliche Ankündigung des GNU-Projektes gibt auch einen Überblick über die ursprünglichen Pläne für das GNU-System. Zu der Zeit, als Linux geschrieben wurde, war das System fast fertig.

Die meisten Freie-Software-Projekte haben das Ziel, ein bestimmtes Programm für eine bestimmte Aufgabe zu entwickeln. Zum Beispiel hat es Linus Torvalds darauf ausgesetzt, einen Unix-artigen Kernel (Linux); Donald Knuth einen Text-Formatierer (TeX); und Bob Scheifler, ein Fenstersystem (X Windows) zu schreiben. Es ist natürlich, das man den Beitrag eines solchen Projektes an den spezifischen Programmen misst, die aus diesem Projekt kommen.

Was würden wir feststellen, wenn wir versuchen würden, den Beitrag des GNU-Projektes zu messen? Ein CD-ROM-Anbieter fand, dass GNU-Software mit ungefähr 28% vom totalen Quellcode der größte einzelne Anteil ihrer Linux-Distribution war. Und das schloss einige der wesentlichen Hauptkomponenten mit ein, ohne die es kein System geben könnte. Linux selbst hatte ungefähr 3%. Wenn man also einen Namen für das System auf der Basis, wer die Programme im System geschrieben hat, wählen würde, wäre die zutreffenste einzelne Wahl GNU.

Aber wir denken nicht, dass das die richtige Art und Weise ist, die Frage zu betrachten. Das GNU Projekt war und ist kein Projekt, um spezifische Software-Pakete zu entwickeln. Es war kein Projekt, um einen C-Compiler zu entwickeln, obwohl wir das taten. Es war kein Projekt, um einen Texteditor zu entwickeln, obwohl wir einen entwickelten. Das Ziel des GNU-Projektes war es, ein komplettes, freies, Unix-artiges System zu entwickeln: GNU.

Viele Leute haben bedeutende Beiträge zu der freien Software im System geleistet, und sie alle verdienen Ansehen. Aber der Grund, weshalb es ein integriertes System, und nicht nur eine Sammlung von nützlichen Programmen ist, liegt darin, dass das GNU-Projekt darauf zielt, eins anzufertigen. Wir fertigten eine Liste von den Programmen an, die wir noch brauchten, um ein vollständiges System anzufertigen und wir fanden, schrieben, oder fanden systematisch Leute, um alles auf der Liste zu schreiben. Wir schrieben wesentliche, aber nicht aufregende (1) Komponenten, da man kein System ohne sie haben kann. Einige unserer Systemkomponenten, die Programmierwerkzeuge, wurden unabhängig vom Gesamtsystem unter Programmierern populär. Aber wir schrieben auch viele Komponenten, die keine Werkzeuge (2) sind. Wir entwickelten sogar ein Schach-Spiel, GNU Chess, da ein komplettes System auch gute Spiele braucht.

In den frühen 90ern hatten wir das ganze System, abgesehen vom Kernel (und wir arbeiteten auch an einem Kernel, dem GNU Hurd, der auf dem Mach-Kernel aufsetzt), zusammen gestellt. Diesen Kernel zu entwickeln, war erheblich schwerer als wir erwarteten; der GNU Hurd fing 2001 an, zuverlässig zu funktionieren. Wir fangen nun an, die tatsächliche Freigabe des GNU-Systems, mit dem GNU Hurd, vorzubereiten.

Glücklicherweise musste man nicht auf den Hurd warten, da Linux verfügbar war. Als Linus Torvalds Linux schrieb, füllte er die letzte große Lücke. Die Leute konnten dann Linux mit dem GNU-System zusammen fügen, um ein komplettes und freies System zu haben: eine Linux-basierte Version des GNU-Systems; kurz, das GNU/Linux System.

Sie zusammen fügen hört sich einfach an, es war aber keine unbedeutende Arbeit. Einige GNU-Komponenten (3) benötigten wesentliche Änderung, um mit Linux zu funktionieren. Ein vollständiges System als eine Distribution einzubinden, die 'out of the box' funktionieren würde, war auch eine große Aufgabe. Man musste die Frage angehen, wie man das System installiert und bootet -- ein Problem, dass wir noch nicht angepackt hatten, da wir diesen Punkt noch nicht erreicht hatten. Die Leute, die die verschiedenen Distributionen entwickelt haben, leisteten einen beträchtlichen Beitrag.

Das GNU-Projekt unterstützt GNU/Linux Systeme ebenso wie das GNU-System -- sogar mit Geldmitteln. Wir finanzierten das Umschreiben der mit Linux in Zusammenhang stehenden Erweiterungen zur GNU C-Bibliothek, sodass sie jetzt gut integriert sind, und die neuesten GNU/Linux Systeme benutzen die aktuelle Ausgabe der Bibliothek, ohne Änderungen. Wir finanzierten auch ein frühes Stadium der Entwicklung von Debian GNU/Linux.

Wir benutzen heute Linux-basierte GNU-Systeme für den Großteil unserer Arbeit und wir hoffen, dass Sie sie auch nutzen. Aber bitte verwirren Sie die Öffentlichkeit nicht, indem Sie den Namen Linux zweideutig benutzen. Linux ist der Kernel, einer der wesentlichen Hauptkomponenten des Systems. Das System im ganzen ist mehr oder weniger das GNU-System, durch Linux ergänzt. Wenn Sie über diese Kombination sprechen, nennen Sie es bitte GNU/Linux.

Wenn du einen Link auf GNU/Linux für weiteren Bezug machen willst, sind diese Seite und http://www.gnu.org/gnu/the-gnu-project.html gute Wahlen. Wenn du Linux, den Kernel, erwähnst und einen Link für weiteren Bezug anfügen willst, ist http://www.kernel.org/ ein gute URL, die du benutzen kannst.

Nachtrag: Unabhängig neben GNU hat auch ein anderes Projekt ein freies Unix-artiges Betriebssystem erzeugt. Dieses System ist bekannt als BSD und es wurde an der UC Berkeley entwickelt. In den 80ern war es nicht frei, wurde aber in den frühen 90ern frei. Ein freies Betriebssystem, dass heute existiert, ist nahezu gewiss entweder eine Variante des GNU-Systems oder eine Sorte des BSD-Systems.

Leute fragen manchmal, ob BSD auch eine Version von GNU, wie GNU/Linux, ist. Die BSD-Entwickler wurden vom Beispiel des GNU-Projektes, ihren Code zu freier Software zu machen, inspiriert, und ausdrückliche Wirkungen von GNU-Aktivisten halfen, sie zu überreden, aber der Code hatte nur kleine Überschneidungen mit GNU. BSD-Systeme benutzen heute einige GNU-Programme, wie das GNU-System und seine Varianten ebenso einige BSD-Programme benutzen; dennoch, insgesamt genommen sind sie zwei verschiedene Systeme, die sich getrennt entfalteten. Die BSD-Entwickler schrieben keinen Kernel und fügen ihn dem GNU-System hinzu; daher würde ein Name wie GNU/BSD hier nicht passen.

[Wenn sie mehr über diese Angelegenheit lernen möchten, können sie auch unsere GNU/Linux FAQ lesen.]

Anmerkungen:

Diese nicht aufregenden, aber notwendigen Komponenten umfassen den GNU Assembler (GAS) und Linker (GLD), beide sind nun Teil des GNU Binutils Paketes, GNU tar, und mehr.

Beispielsweise sind die Bourne Again Shell (BASH), der PostScript Interpreter Ghostscript und die GNU C-Bibliothek keine Programmierwerkzeuge. GNUCash, GNOME, und GNU Chess sind auch keine.

Zum Beispiel die GNU C-Bibliothek.

Richten Sie Anfragen bezüglich FSF und GNU an gnu@gnu.org. Außerdem gibt es noch andere Möglichkeiten, mit der FSF in Verbindung zu treten.

Schicken Sie Kommentare zu diesen Webseiten an webmasters@www.gnu.org, andere Fragen an gnu@gnu.org.

Copyright 1997, 1998 Richard Stallman

Die unveränderte Wiedergabe und Verbreitung dieses gesamten Artikels in beliebiger Form ist gestattet, sofern dieser Hinweis beibehalten wird.

Übersetzt von Richard Steuer <debianer@cyberspace.org>