Start | Inhalt | Weiter | Zurück |
Kapitel 3 (a)
Freie Software Projekte
Auf den folgenden Seiten werden die wichtigsten Projekte freier Software besprochen, deren Entstehung und Entwicklung im einzelnen dargelegt, primäre Einsatzorte benannt und auf Besonderheiten hingewiesen.
Dabei wurde eine grobe Kategorisierung nach Art der Software vorgenommen: Betriebssysteme (Linux, FreeBSD) und -erweiterungen, genauer: grafische Benutzeroberflächen (KDE, GNOME), System- und Netzwerksoftware (Apache, DNS/BIND, sendmail, Samba), Programmiersprachen (Perl, Tcl/Tk, Python, PHP) und Anwendungen (GIMP, TeX}/LaTeX).
Es kann nur eine begrenzte Auswahl an freier Software vorgestellt werden, da sonst allein die Beschreibung dieser den Rahmen sprengen würde. Die hier erwähnten Projekte gehören zu den bedeutendsten und verkörpern den Begriff "Open Source" am besten.
3.1 GNU
GNU (rekursives Akronym für "GNU is not Unix") ist das Software-Projekt der Free Software Foundation, ihr Markenzeichen. Sein Initiator, Richard Stallman, wollte ein vollwertiges, neues und vollkommen freies Betriebssystem schaffen, das die Grundlage für eine freie Software-Bewegung sein sollte, so wie er sie damals in seinen Anfängen am MIT kennen und schätzen gelernt hatte. Ein sehr ernsthaftes Projekt mit hochgesteckten Zielen.
Alles fing am 27. September 1983 an, als er sein Vorhaben in zwei Newsgroups im Internet darlegte, mit dem Aufruf, in irgendeiner Form Beiträge zu leisten. Als Ausgangspunkt dienten die freien Programme, die Stallman zuvor entwickelt hatte. Um sein Ziel ausdrücklich und unmißverständlich - auch hinsichtlich seiner politischen Ziele - klar zu machen, schrieb er das GNU-Manifest [22].
Relativ schnell fanden sich Programmierer, die bereit waren, einen Teil ihrer Freizeit in GNU zu investieren. Fast alle waren Anhänger der Lehre von Richard Stallman und teilten seine Ansichten bezüglich freier Software. Aber die Arbeit an einem Betriebssystem verlangt eine genaue Koordination der Entwicklung einzelner Komponenten, erst recht, wenn seine Programmierer nur einen Teil ihrer Zeit dafür aufwenden.
GNU war von Anfang an als Ersatz für Unix konzipiert worden, dessen Schnittstellen dokumentiert, also verhältnismäßig einfach zu implementieren waren. Man begann zunächst mit der Programmierung von kompatiblen Gegenstücken der zahlreichen Unix-Tools (awk, sed usw.), die wenig Organisation und Kommunikation der Entwickler untereinander bedurfte, wesentlich weniger als beispielsweise der Betriebssystemkern (Kernel).
Um die Arbeit schneller voranzutreiben, nutzte man jegliche freie Software, die noch irgendwie in GNU eingebaut werden konnte. TeX als Textformatierer, das X-Window-System usw. So besteht also das GNU-System nicht ausschließlich aus GNU-Software.
Die Entwicklung eines Compilers stellte die erste wirkliche Herausforderung dar, weil dieser von Grund auf neu geschrieben werden mußte. Stallman selbst programmierte den GNU C Compiler (GCC) als Basis für die weitere Softwareentwicklung.
Neue Programme folgten: Ein Debugger, ein Kommandointerpreter (Bourne Again Shell, bash), eine C-Bibliothek, Editoren etc., die sämtlich den Lizenzen GPL/LGPL unterlagen. Die Dokumentation zu diesen Programmen war ebenfalls frei. Fehlendes wurde in die sogenannte GNU Task-Liste aufgenommen. Fundamentale Unix-Komponenten waren mit der Zeit fast völlig von dieser Liste verschwunden, abgesehen vom wichtigsten überhaupt: ein stabiler GNU-Kernel.
Die Beliebtheit einiger GNU-Tools hatte so stark zugenommen, daß sie auf andere, proprietäre Unix-Systeme portiert wurden und dort zum Standard avancierten. Bis 1991 konnte GNU keinen stabilen Betriebssystemkern aufweisen. Der Kernel Hurd war noch nicht reif für den Einsatz in einer Produktionsumgebung. Doch hatte ein Programmierer Aufsehen erregt, der gar nicht zur Gemeinde der FSF gehörte, aber es geschafft hatte, einen freien Unix-Kernel zu implementieren: Linux von Linus Torvalds.
Torvalds seinerseits begrüßte die Arbeit der Mitglieder der FSF, und so stellte er seine Entwicklung unter die GPL, was, wie er sagt, eine seiner besten Entscheidungen gewesen war. Die Zusammenarbeit in den folgenden Jahren, das Zusammenschweißen von GNU und Linux, brachte ein System hervor, das eine Revolution in der Softwarebranche darstellte, nicht wegen seiner Technik, sondern wegen der Art seiner Entstehungsgeschichte. Ein funktionierendes, von tausenden Entwicklern aus aller Welt unentgeltlich entwickeltes Betriebssystem, das oftmals seine proprietäre Konkurrenz im Regen stehen läßt, wird noch heute oftmals als ein Ding der Unmöglichkeit betrachtet.
Auch wenn nun ein völlig freies Betriebssystem existiert, so ist das GNU-Projekt noch lange nicht beendet. Im Gegenteil, Stallman versucht umso mehr, die Philosophie von GNU und der FSF weiterzuverbreiten, von der er glaubt, sie sei durch den kommerziellen Erfolg von Linux untergegangen [23]. Aber auch der softwaretechnische Aspekt wird nicht vernachlässigt: Schwester-Projekte wurden ins Leben gerufen. So ist GNOME, eine einheitliche, grafische Benutzeroberfläche für Unix-kompatible Systeme, die offizielle Desktop-Entwicklung und Hauptaugenmerk von GNU.
Start | Inhalt | Weiter | Zurück |
Kommentare, Anregungen, Berichtigungen, Verbesserungsvorschläge oder anderes Feedback an info@dbus.de