English [en]   العربية [ar]   български [bg]   català [ca]   Česky [cs]   Deutsch [de]   ελληνικά [el]   español [es]   فارسی [fa]   français [fr]   עברית [he]   hrvatski [hr]   Bahasa Indonesia [id]   italiano [it]   日本語 [ja]   한국어 [ko]   മലയാളം [ml]   Nederlands [nl]   polski [pl]   português do Brasil [pt-br]   română [ro]   русский [ru]   slovenščina [sl]   Shqip [sq]   српски [sr]   தமிழ் [ta]   Tagalog [tl]   українська [uk]   简体中文 [zh-cn]   繁體中文 [zh-tw]  

Thanks to your support, 2015 marks 30 years of the FSF! In the next 30 years, we want to do even more to defend computer user rights. To kick off in that direction, we're setting our highest-ever fundraising goal of 525.000 $ by January 31st. mehr.

525 k USD
26% (138 k)
Count me in

Dieses Werk ist eine Übersetzung aus dem Englischen.

Das GNU-System und Linux

von Richard Stallman

Viele Rechnernutzer führen jeden Tag eine modifizierte Version des GNU-Systems aus ‑ ohne es zu wissen. Durch eine befremdende Wendung der Ereignisse wird die Version von GNU ‑ die heute weit verbreitet ist ‑  oft „Linux“ genannt, und viele Nutzer sind sich dessen nicht bewusst, dass es im Grunde das GNU-System ist, entwickelt durch das GNU-Projekt.

Es gibt wahrhaft ein Linux und diese Menschen benutzen es, aber es ist nur ein Teil des Systems, das sie benutzen. Linux ist der Betriebssystemkern: das Programm im System, das die Ressourcen des Systems an die anderen Programme zuteilt. Der Systemkern ist ein wesentlicher Teil eines Betriebssystems, aber an sich unbrauchbar; er kann nur im Kontext mit einem kompletten Betriebssystem fungieren. Linux wird üblicherweise in Kombination mit dem GNU-Betriebssystem benutzt: das ganze System ist grundsätzlich GNU mit Linux ‑ oder GNU/Linux. All die sogenannten „Linux“-Distributionen sind tatsächlich GNU/Linux-Distributionen.

Viele Benutzer verstehen nicht den Unterschied zwischen dem Systemkern, nämlich Linux, und dem Gesamtsystem, dass sie auch „Linux“ nennen. Diese missverständliche Verwendung des Namens begünstigt nicht das Verstehen. Diese Benutzer denken oftmals, dass Linus Torvalds das gesamte Betriebssystem 1991 mit ein bisschen Hilfe entwickelte.

Programmierer wissen im Allgemeinen, dass Linux ein Betriebssystemkern ist. Da sie aber im Allgemeinen ebenso selbstverständlich „Linux“ als Gesamtsystem hörten, stellen sie sich häufig eine Geschichte vor, die das Benennen des Gesamtsystems nach dem Systemkern rechtfertigen würde. Beispielsweise waren viele davon überzeugt, dass, sobald Linus Torvalds das Schreiben des Linux-Systemkerns beendete, sich seine Nutzer nach anderer freier Software umgucken würden, um dann diese zu nutzen, und entdeckten, dass (ohne besonderen Grund) fast alles Notwendige für ein unixähnliches System bereits verfügbar war.

Was sie vorfanden war kein Unfall ‑ es war das (noch unvollständige) GNU-System. Die verfügbare Freie Software trug zu einem Komplettsystem bei, weil das GNU-Projekt seit 1984 an einem gearbeitet hatte. Im GNU-Manifest erklärten wir das Ziel, ein freies, unixähnliches System namens GNU zu entwickeln. Die ursprüngliche Ankündigung des GNU-Projekts umreißt auch einige der ursprünglichen Pläne für das GNU-System. Als mit Linux begonnen wurde, war GNU fast fertig.

Die meisten Freie-Software-Projekte haben das Ziel, ein bestimmtes Programm für eine bestimmte Aufgabe zu entwickeln. Zum Beispiel hat sich Linus Torvalds vorgenommen, einen unixähnlichen Systemkern (Linux) zu schreiben; Donald Knuth ein Textsatzprogramm (TeX); und Bob Scheifler ein Fenstersystem (das X Window System). Es ist natürlich, den Beitrag eines solchen Projektes an bestimmten Programmen zu messen, die aus diesem Projekt kamen.

Zu welchem Schluss würden wir bei dem Versuch kommen, den Beitrag des GNU-Projekts danach zu messen? Ein CD-ROM-Anbieter fand heraus, dass in deren „Linux-Distribution“ GNU-Software mit etwa 28 % der größte einzelne Anteil des gesamten Quellcodes war. Und das waren einige der wesentlichen Hauptkomponenten, ohne die es überhaupt kein System geben würde. Linux selbst machte ungefähr 3 % aus (2008 sind die Anteile ähnlich: im Haupt-Projektarchiv von gNewSense Linux 1,5 % und GNU-Pakete 15 %). Wenn man also vorhätte einen Namen für das System basierend darauf auszuwählen, wer die Programme im System geschrieben hat, wäre die entsprechendste einzige Antwort GNU.

Aber das ist nicht der richtige Weg, um die Angelegenheit zu beurteilen. Das GNU-Projekt war und ist kein Projekt, um bestimmte Softwarepakete zu entwickeln. Es war kein Projekt um einen C-Compiler zu entwickeln, obgleich wir das taten. Es war kein Projekt, um einen Texteditor zu entwickeln, obgleich wir einen entwickelten. Das GNU-Projekt hat sich vorgenommen, ein vollständig freies, unixähnliches System zu entwickeln: GNU.

Viele haben maßgebliche Beiträge zu der freien Software im System geleistet, und sie alle verdienen Anerkennung für ihre Software. Aber der Grund ist, weshalb es ein integriertes System ‑ und nicht nur eine Sammlung nützlicher Programme ‑ ist, weil sich das GNU-Projekt vorgenommen hat, es zu einem zu machen. Wir fertigten eine Liste der benötigten Programme an, um ein vollständig freies System zu entwickeln, und systematisch fanden und schrieben oder fanden wir Personen, um alles auf der Liste zu schreiben. Wir schrieben wesentliche, aber wenig aufregende Komponenten(1), da man ohne sie kein System haben kann. Einige unserer Systemkomponenten, die Programmierwerkzeuge, wurden unter Programmierern eigenständig populär, aber wir schrieben auch viele Komponenten, die keine Werkzeuge(2) sind. Wir entwickelten sogar ein Schachspiel, GNU Chess, weil ein Gesamtsystem auch Spiele braucht.

Anfang der 90er hatten wir das gesamte System, abgesehen vom Systemkern, zusammengestellt. Wir arbeiteten ebenfalls an einem Systemkern, dem GNU Hurd, der auf Mach aufsetzt. Die Entwicklung dieses Systemkerns ist sehr viel schwieriger gewesen, als wir angenommen hatten; GNU Hurd begann 2001 zuverlässig zu arbeiten, aber ist weit davon entfernt, allgemein benutzbar zu sein.

Glücklicherweise mussten wir wegen Linux nicht auf Hurd warten. Nachdem Torvalds im Jahr 1992 Linux freigegebenen hatte, füllte es die letzte große Lücke im GNU-System. Man konnte dann Linux mit dem GNU-System kombinieren, um ein vollständig freies System zu erhalten ‑ eine Version des GNU-Systems, das auch Linux enthielt. Das GNU/Linux-System, mit anderen Worten.

Das Zusammenfügen hört sich einfach an, war aber keine triviale Aufgabe. Einige GNU-Komponenten(3) benötigten eine erhebliche Änderung, um mit Linux zu arbeiten. Die Integration eines kompletten Systems zu einer Distribution, die sofort einsatzbereit sein würde, war ebenfalls eine große Aufgabe. Es musste die Frage gelöst werden, wie man das System installiert und startet ‑ ein Problem, dass wir noch nicht angepackt hatten, weil wir diesen Punkt noch nicht erreicht hatten. Daher leisteten die Personen, die die verschiedenen Systemdistributionen entwickelten, sehr viel maßgebliche Arbeit. Aber es war Arbeit, die ‑ in der Natur der Sache ‑ sicher war, von jemand erledigt zu werden.

Das GNU-Projekt unterstützt GNU/Linux-Systeme als auch das GNU-System. Die Free Software Foundation (FSF) unterstützte die Überarbeitung der Linux-bedingten Erweiterungen zur GNU C-Bibliothek finanziell, sodass diese nun gut integriert sind und die neuesten GNU/Linux-Systeme die aktuelle Freigabe der Bibliothek nutzen, ohne Änderungen vornehmen zu müssen. Die FSF unterstützte auch ein frühes Stadium der Entwicklung von Debian GNU/Linux finanziell.

Gegenwärtig gibt es viele verschiedene Varianten des GNU/Linux-Systems (vielfach Distributionen genannt). Die meisten enthalten unfreie Software ‑ deren Entwickler eher der mit „Linux“ anstatt der von GNU verbundenen Philosophie folgen. Aber es gibt auch völlig freie GNU/Linux-Distributionen. Die FSF unterstützt gNewSense mit EDV-Fa­zi­li­täten.

Eine freie GNU/Linux-Distribution ist nicht nur ein Frage verschiedene unfreie Programme zu beseitigen. Heutzutage enthält die übliche Version von Linux auch unfreie Programme. Diese Programme sollen beim Start des Systems in Ein-/Ausgabegeräte geladen werden und sind als lange Zahlenreihen im „Quellcode“ von Linux enthalten. Somit beinhaltet die Pflege freier GNU/Linux-Distributionen nun ebenfalls die Pflege einer freien Version von Linux.

Ob Sie GNU/Linux benutzen oder nicht, bitte irritieren Sie die Öffentlichkeit nicht durch doppeldeutiges Verwenden des Namens „Linux“. Linux ist der Betriebssystemkern, einer der unbedingt erforderlichen Hauptkomponenten des Systems. Das System als Ganzes ist grundsätzlich das GNU-System mit hinzugefügtem Linux. Wenn Sie über diese Kombination sprechen, nennen Sie es bitte GNU/Linux.

Möchten Sie auf GNU/Linux verweisen, ist dieser Seite sowie http://www.gnu.org/gnu/the-gnu-project.html eine gute Wahl. Wenn Sie den Betriebssystemkern Linux erwähnen und darauf verweisen möchten, ist http://foldoc.org/linux eine brauchbare Adresse.

Nachtrag: Abgesehen von GNU hat auch ein anderes Projekt ein freies, unixähnliches Betriebssystem unabhängig angefertigt. Dieses System ist als BSD bekannt und wurde an der University of California, Berkeley, entwickelt. In den 80ern war es unfrei, wurde aber Anfang der 90er frei. Ein gegenwärtig existierendes freies Betriebssystem(4) ist höchstwahrscheinlich entweder eine Variante des GNU- oder geistiges Kind des BSD-Systems.

Manchmal wird gefragt, ob BSD auch eine Version von GNU wie GNU/Linux sei. Die BSD-Entwickler wurden angeregt, ihren Quellcode zu freier Software am Beispiel des GNU-Projekts zu machen, und nachdrückliche Appelle von GNU-Aktivisten halfen sie zu überzeugen, aber der Quellcode hatte kaum Überschneidungen mit GNU. BSD-Systeme nutzen heute einige GNU-Programme wie das GNU-System und seine Varianten ebenso einige BSD-Programme nutzen; allerdings, als Ganzes betrachtet, sind sie zwei verschiedene Systeme, die separat entwickelt wurden. Die BSD-Entwickler schrieben keinen Systemkern und fügten diesen dem GNU-System hinzu, daher würde ein Name wie GNU/BSD der Situation(5) nicht gerecht werden.

Anmerkungen:

  1. Diese wenig aufregenden aber wesentlichen Komponenten umfassen den GNU Assembler (GAS) und den GNU Linker (GLD), beide nun Teil des GNU Binary Utilities-Pakets (kurz ‚binutils‘), GNU tar und vielen weiteren Paketen.
  2. Beispielsweisedie sind die Bourne Again SHell (BASH), der PostScript Interpreter Ghostscript und die GNU C-Bibliothek keine Programmierwerkzeuge. Auch GNUCash, GNOME und GNU Chess nicht.
  3. Zum Beispiel die GNU C-Bibliothek.
  4. Seitdem dies geschrieben wurde, ist ein nahezu-ganz-freies Windows-ähnliches System entwickelt worden, aber technisch ist es GNU oder Unix überhaupt nicht ähnlich, so dass es nicht wirklich Einfluss auf dieses Anliegen hat. Der Großteil des Systemkerns von Solaris wurde frei gemacht, aber würde man daraus ein freies System machen wollen, abgesehen von der Ersetzung der fehlenden Teile des Systemkerns, würde man es auch bei GNU oder BSD machen müssen.
  5. Auf der anderen Seite wurde, in den Jahren seitdem dieser Artikel geschrieben wurde, die GNU C-Bibliothek auf mehrere Versionen des BSD-Systemkerns portiert, was es einfach machte, das GNU-System mit diesem zu kombinieren. Ebenso wie GNU/Linux sind diese in der Tat Varianten von GNU und werden daher beispielsweise GNU/kFreeBSD und GNU/kNetBSD, abhängig vom Systemkern des Systems, genannt. Gewöhnliche Benutzer mit typischen Arbeitsoberflächen können zwischen GNU/Linux und GNU/*BSD kaum unterscheiden.

FSF„Unsere Mission ist die Freiheit zu bewahren, zu schützen und zu fördern, um Rechnersoftware nutzen, untersuchen, kopieren, modifizieren und weiterverbreiten zu können und die Rechte von Freie-Software-Nutzern zu verteidigen.“

Die Free Software Foundation ist der organisatorische Hauptsponsor des GNU-Betriebssystems. Unterstützen Sie GNU und die FSF durch den Kauf von Handbüchern und Kleidung, als assoziiertes Mitglied oder mit einer Spende direkt an die FSF oder via Flattr.

Zum Seitenanfang