GNU Projekt

GNU ist ein gemeinschaftliches Projekt mit dem Ziel, ein vollständig aus freier Software bestehendes Betriebssystem zu entwickeln. Bekannt geworden ist es vor allem durch seinen Einsatz im Linux-Umfeld und durch die Software-Lizenz GPL. Die Software des Projektes ist jedoch nicht auf Linux beschränkt. Sie findet Verwendung auf vielen Unix-Systemen und lässt sich in weiten Teilen auch unter Windows einsetzen. Das GNU-Projekt hat maßgeblich zur Verbreitung von freier Open-Source-Software (FOSS) beigetragen und wurde zu einem wichtigen Teil der Computer- und Internettechnologie.

Geschichte und Motivation des GNU-Projektes

Bis in die späten 1970er Jahre war die Computerszene von akademischer Zusammenarbeit geprägt. Programmierer, Anwender und Administratoren sowie Firmen, Universitäten und andere Einrichtungen tauschten Wissen und Quellcode sehr freizügig untereinander aus. Dies änderte sich mit dem zunehmenden Einsatz der Computertechnik in allen Wirtschaftszweigen und im privaten Umfeld. Firmen und Universitäten begangen ihren Quellcode vor Konkurrenten zu schützen und verpflichteten ihre Programmierer zur Verschwiegenheit.

Einige Entwickler sahen darin einen innovationsfeindlichen Trend und eine Gefahr für die Informationsfreiheit und Sicherheit. Lange bevor Facebook, Google, Datenschutz und tägliche Sicherheitslecks zum Thema wurden, erkannten sie die Risiken, die in geheim gehaltenen Algorithmen und Programmcode lauern.

Einer dieser Entwickler war der damalige MIT-Programmierer Richard Stallman, der 1983 das GNU-Projekt gründete. Obwohl es um den Aufbau eines Unix-ähnlichen Betriebssystems ging, benannte Stallman das Projekt GNU – “GNU is Not Unix”. Die Bezeichnung sollte vornehmlich Lizenz- und markenrechtliche Probleme vermeiden. In den folgenden Jahren entwickelten er und eine zunehmende Anzahl weiterer Programmierer viele grundlegende Unix-Werkzeuge inklusive eines C-Compilers. Er schrieb die erste Version der GPL und gründete die Free Software Foundation (FSF), eine gemeinnützige Organisation für die Entwicklung, Verbreitung und Verteidigung von freier Software.

Die GPL – Open-Source versus Free Software

Die GNU General Public Licence ist eine Software-Lizenz, die garantieren soll, dass freie Software auch frei bleibt. Andere Open-Source-Lizenzen, wie die MIT– oder BSD-Lizenzen, erlauben das Einbinden von Open-Source-Code in proprietäre – also unfreie – Close-Source-Software. Die GPL untersagt dies, um zu verhindern, dass freier Quellcode nach und nach zunehmend unfreier wird. Einige Entwickler sehen wiederum darin eine Innovationsfeindlichkeit, weshalb die Free Software Foundation die LGPL entwickelt hat. Die Library- oder Lesser-GPL erlaubt unter bestimmten Bedingungen die Verwendung von freiem Sourcecode in proprietären Programmen. Sie findet vor allem bei Funktions- und Klassenbibliotheken sowie Frameworks Verwendung.

Der Unterschied zwischen der GPL und anderen Open-Source-Lizenzen ist gleichzeitig einer der Unterschiede zwischen Open-Source und freier Software. Laut Stallman garantiert Ersteres nur das Einsehen des Quellcodes, während freie Software umfangreiche Rechte wie Einsehen, Verändern, und Weitergeben zusichert. Dass es sich dabei nicht um sprachliche oder rechtliche Pedanterie handelt, lässt sich an dem grafischen Framework Qt und dem Schulungsbetriebssystem Minix erkennen. Beide waren in der Vergangenheit zwar Open-Source-Software, erlaubten aber keine beliebige Veränderung und Weitergabe, wie sie die freie Software garantiert. Gleiches gilt für die Programmiersprache Java.

Die Prinzipien der freien Software

Ein weiterer Unterschied zwischen Open-Source und freier Software sind die zugrunde liegenden Prinzipien. Manche Entwickler werfen der Free-Software-Bewegung vor, zu ideologisch zu sein. Daher schlugen sie den Begriff Open-Source vor und konzentrierten sich auf einen pragmatischen Ansatz. Tatsächlich sind die Grundsätze der freien Software in vielen Teilen ethischer Natur, die sich in vier Freiheiten niederschlagen.

  • 1. Jeder Nutzer darf die Software für beliebige Zwecke einsetzen.
  • 2. Der Quellcode muss öffentlich zugänglich sein, damit er sich untersuchen und anpassen lässt.
  • 3. Das originale oder angepasste Programm darf weitergegeben werden.
  • 4. Jeder Mensch hat das Recht die Software zu erweitern und zu verbessern, was allen Menschen zugute kommen soll.

Ein häufiger Irrtum ist, dass freie Software grundsätzlich kostenlos ist. Die Prinzipien des Projektes untersagen nicht den Verkauf der Programme. Da aber der Quellcode öffentlich zur Verfügung stehen muss, lassen sich die Programme schwer auf übliche Weise monetarisieren. Dass dies dennoch gelingen kann, zeigen Unternehmen wie Red Hat und SuSE/Novell, deren Linux-Systeme RHEL respektive SLES kostenpflichtig sind. Freie Software erlaubt vielfältige Einnahmemethoden, wie kostenpflichtiger Support, Verkauf fertiger Binärprogramme, Bücher, Individuallösungen oder mittels des das Freemium-Modells.

Das GNU-Betriebssystem und Linux

Das GNU-Betriebssytem ist ein vollständig freies Unix-ähnliches Betriebssystem. Laut Stallman war Unix zwar kein ideales System, aber es war gut genug, um darauf aufzubauen. Tatsächlich ist Unix bis heute eines der einflussreichsten Betriebssysteme, auf dem fast alle heutigen Systeme aufbauen. Dazu zählen Linux und Android, macOS und iOS, die BSD-Varianten sowie klassische Unix-Systeme wie Solaris und AIX.

Eine Besonderheit von Unix ist seine Modularität. Es besteht aus vielen kleinen Einzelteilen, die zusammenarbeiten und vielfältig miteinander kombinierbar sind. Die wichtigsten Komponenten sind der Systemkern, die Funktionsbibliotheken und die grundlegenden Werkzeuge für Dateiverwaltung, Softwareentwicklung und Systemadministration. Bereits früh hatten die GNU-Programmierer die Bibliotheken, einen C-Compiler und die wichtigsten Unix-Werkzeuge wie ls, cp, sed und dergleichen fertig entwickelt.

Auch die Arbeit an einem Systemkern – Hurd genannt – wurde begonnen, jedoch ist dieser bis heute nicht einsatzbereit. Als Ersatz empfiehlt das GNU-Projekt, den Linux-Systemkern zu verwenden. In der Tat basieren die meisten Linux-Distributionen auf dieser Kombination, woraus sich ein Namensstreit entwickelt hat. Das GNU-Projekt fordert, dass Linux-Systeme, die GNU einsetzen, als GNU/Linux bezeichnet werden. Obwohl diese Forderung moralisch verständlich ist, hat sich die kurze und eingängige Bezeichnung “Linux” für alle Systeme dieser Art durchgesetzt.

Weitere GNU Software

Das Projekt umfasst heutzutage viele Programme, aus denen sich ein fast vollständiges, modernes Betriebssystem aufbauen lässt. Neben den grundlegenden Unix-Tools stehen viele weitere Werkzeuge, Bibliotheken und Anwendungsprogramme bereit. Dazu gehören das GUI-Framework GTK und der GNOME-Desktop, der bei vielen Linux- und Unix-Betriebssystemen Verwendung findet. Hinzukommen Compiler und Interpreter für Programmiersprachen wie AWK, C, C++, Cobol, Eiffel, Fortran, Java, LISP, Pascal, R, Scheme, Smalltalk und viele weitere.

Ebenso betreut und entwickelt das GNU-Projekt viele weitere Anwendungen. Als Beispiele seien genannt:

  • GIMP, ein Grafik- und Malprogramm, vergleichbar mit PhotoShop
  • die Finanzverwaltungssoftware GnuCash
  • Dia, ein Vektor-Grafik-Programm für Diagramme und technische Zeichnungen
  • ein Excel-kompatibles Tabellenkalkulationsprogramm namens Gnumeric
  • das MATLAB-ähnliche Mathematik-Programm Octave
  • Gnuzilla, eine vollständig freie Version der Mozilla Internet-Anwendungen
  • GNU Emacs, eine Version des klassischen Programmierer-Editors

Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenlose SEO Analyse


Weitere Inhalte