ubuntuusers.de

🛈 Aktuell gibt es im Wiki ca. 300 Artikel, die nur für Xenial getestet sind. Dies entspricht ca. 3,8 % aller Wikiartikel. Damit diese im Frühjahr nicht alle archiviert werden müssen, ist eure Mithilfe gefragt!

20 Jahre Linux

linux.png

Morgen, am 25. August 2011, wird Linux 20 Jahre alt. Zu diesem Jubiläum wollen wir die Geschichte des freien Betriebssystems und seines Erfinders näher beleuchten.

Entwicklungen im Voraus

UNIX

Auch wenn Linus Torvalds die erste Version von Linux im September 1991 veröffentlichte, reichen dessen Wurzeln noch einmal 25 Jahre weiter in die Vergangenheit. Damals entwarfen die amerikanischen Firmen General Electric, Honeywell sowie die Forschungseinrichtungen MIT und Bell Labs Konzepte für ein Betriebssystem für Großrechner, das sie Multics nannten. Während der Entwicklung kam es jedoch zu Problemen, da die damalige Hardware nicht den Ansprüchen von Multics entsprachen. So zogen sich die Bell Labs aus dem Projekt zurück. Einige Entwickler der Bell Labs, darunter Dennis Ritchie, Ken Thompson, Douglas McIlroy und Joseph Ossanna, gaben das Projekt jedoch nicht auf. Sie entwickelten ein eigenes Betriebssystem, das auf den Ideen von Multics basieren sollte. Dafür entwarf Ritchie sogar die Programmiersprache C, in der auch Linux geschrieben wurde.

UNIX entwickelte sich zu einem wichtigen Betriebssystem. Schon bald fanden Firmen und Universitäten Gefallen daran und passten es an ihre Bedürfnisse an. Einige Firmen schrieben auch vollständig neue Systeme, die sich jedoch wie UNIX verhielten. Infolge dessen gab es große Kompatibilitätsschwierigkeiten, da jedes System sich an andere Konventionen hielt und verschiedene Kommandos kannte. Um dem aus dem Weg zu gehen, wurde 1985 der POSIX-Standard eingeführt, an den sich auch die meisten Unix-ähnlichen Betriebssystem (also auch Linux) halten.

GNU

Gisleh_-_Richard_Stallman_(by-sa)_Oslo-2009.jpg
Richard Stallman 2009 in Oslo
(Foto: Gisle Hannemyr, Lizenz: CC by-sa)

Bis in die 1970er Jahre hinein war es normal, dass Programme zusammen mit ihrem Quellcode vertrieben wurden und dieser verändert wurde. Dies änderte sich jedoch Anfang der 1980er Jahre, als man begann Software unter proprietäre Lizenzen zu stellen. Richard Stallman, der in dieser Zeit am MIT arbeitete und auch dort diese Veränderungen mitbekam, begann ein System zu entwickeln, das es ermöglicht, Software so zu entwickeln und freizugeben, dass der Quellcode frei einsehbar und auch veränderbar ist.

1983 gab er seine Pläne im Usenet bekannt und kündigte am 5.1.1984 seine Stelle am MIT. So konnte er sich ganz seinem Projekt widmen. Dieses nannte er GNU, was für GNU is not Unix steht, denn Stallman wollte eine komplett freie UNIX-Alternative schaffen. Neben dem Betriebssystemkern HURD 🇬🇧 , vielen grundlegenden Diensten und Programmen, z.B Bash, wurden von dem GNU-Projekt jedoch auch viele Dokumente geschrieben, z.B die GNU General Public License (kurz GPL), eine Lizenz, die es ermöglicht Software frei zur Verfügung zu stellen. Mit frei sind damit folgende Rechte gemeint:

  • Das Programm darf uneingeschränkt benutzt werden, auch kommerziell.

  • Das Programm darf verteilt oder verkauft werden. Wichtig ist aber, dass der Quellcode unabhängig davon einsehbar ist.

  • Das Programm darf analysiert und verändert werden. Allerdings müssen die Änderungen ebenfalls unter die GPL gestellt werden.

Die Entstehung von Linux

Über Linus Torvalds

Linus_Torvalds_(by-sa)-linuxmag.com_2002.jpeg
Linus Torvalds 2002
(Foto: linux-mag.com, Lizenz: CC by-sa)

Linus Torvalds, der Linux-Erfinder, wurde am 28. Dezember 1969 in Helsinki (Finnland) als erstes Kind von Anna und Nils Torvalds, beide zu dieser Zeit Studenten, geboren. Es sollten noch eine Schwester und mehrere Halbbrüder folgen.

Das erste Mal kam er mit Computern in Berührung, als er im Alter von 11 Jahren BASIC-Programme mit mathematischen Berechnungen für seinen Großvater, der Statistikprofessor war, in einen Commodore VC 20 eintippte. Daraufhin beschäftigte er sich genauer mit der Programmierung, indem er u. a. kleine Spiele entwickelte. Nach dem Tod seines Großvaters erhielt Linus den Mikrocomputer und entdeckte die Möglichkeit der hardwarenahen Programmierung mit Assembler. Als nächstes kaufte er sich einen Sinclair QL, von dessen Multitaskingfähigkeit er begeistert war. Jedoch war er mit dem Treiber des Diskettenlaufwerks nicht zufrieden und schrieb kurzerhand einen eigenen.

Nach seinem Abschluss des Gymnasiums 1988 begann er ein (theoretisches) Informatikstudium an der Universität Helsinki. Die Universität wechselte in diesem Zeitraum zu einem Unix-Betriebssystem. Um sich auf die Vorlesungen vorzubereiten, kaufte er sich das Buch „Operating Systems Design and Implementation“ von Andrew S. Tanenbaum. In diesem beschreibt der Autor die Prinzipien eines Betriebssystems, sowie den Aufbau und die Möglichkeiten am Beispiel seines Unix-Klons Minix. Dieses Buch hat das Leben von Torvalds, nach eigenen Angaben, verändert und motiviert ihn bis heute.

Außerdem kaufte er sich aufgrund des Alters seines QLs und der Leistungssteigerung der neuen CPUs einen 386er IBM-PC für 18 000 Finnmark (rund 3.300 Euro), den er erst zu einem Drittel bezahlte und den Rest später von der Linux-Community gespendet bekam. Auf diesem Computer war nur ein abgespecktes DOS von Microsoft installiert, das er aber nicht nutzen wollte. Ein „vollwertiges“ Unix, wie er es in der Universität verwendete, war ihm jedoch auch zu teuer. So entschied er sich, Minix zu installieren. Da dieses Betriebssystem hauptsächlich für Lehrzwecke gedacht war, fehlten wichtige Teile. Des Weiteren war es aus lizenzrechtlichen Gründen nicht möglich, eine angepasste Version anzubieten. So musste jeder die Patches in die offizielle Version selbst einzeln einbinden, was sehr (zeit-)aufwendig war.

Die Geburt des Betriebssystemes

Trotz der Verbesserungen blieb immer noch das Manko des schlechten Terminal-Emulators, mit dem Linus auf den Universitäts-Server zugriff. Deshalb beschloss er wegen der Jahreszeit (es war Winter und damit die kälteste Jahreszeit in Finnland), sowie dem Spaß am Ausreizen seines PCs, einen eigenen Emulator zu programmieren. Als dieser nach einem Monat Einarbeitungszeit in die Thread-Programmierung auf Hardware-Basis Gestalt annahm, fehlte ihm eine Down- bzw. Upload-Funktion. Dafür benötigte Linus Treiber für die Festplatte, als auch für das Dateisystem. Er setzte dieses Vorhaben nur um, da in der Universität nicht gerade viel passierte. Linus Torvalds war mit diesem Schritt klar, dass sein Projekt die Ausmaße eines Betriebssystems annahm. Da er auf das Dateisystem von Minix schreiben und lesen wollte, benötigte er eine Kopie des POSIX-Standards. Daher fragte er auf der Minix-Mailinglist nach einer FTP-Seite zum (kostenlosen) Download. Damit erregte er Aufmerksamkeit und bekam die Möglichkeit auf dem FTP-Server der technischen Universität von Helsinki sein Projekt öffentlich zugänglich zu machen. Am 25. August 1991 kündigte 🇬🇧 er dann schließlich sein Projekt an (im Folgenden übersetzt):

Hallo alle da draußen, die Minix einsetzen -

Ich arbeite an einem (freien) Betriebssystem (nur ein Hobby, wird nicht groß und professionell sein wie GNU) für 386(486)AT-kompatible Rechner. Das Projekt entwickelt sich seit April und beginnt fertig zu werden. Ich hätte gern Rückmeldungen über Eigenschaften, die die Leute an Minix mögen/nicht mögen, da mein Betriebssystem diesem in einigen Merkmalen ähnelt (gleiches physikalisches Layout des Dateisystems (aus Praktikabilitätsgründen) und einige andere Dinge).

Ich habe im Moment bereits die bash (1.08) und gcc (1.40) portiert, und es scheint zu funktionieren. Das bedeutet, dass ich in einigen Monaten etwas haben werde, womit man arbeiten kann und mich interessiert, welche Eigenschaften die meisten Leute gerne sehen würden. Alle Vorschläge sind willkommen, aber ich kann nicht versprechen, dass ich sie auch einbaue ☺

Linus (torvalds@kruuna.helsinki.fi)

PS. Ja, es enthält keinerlei Minix-Code und das Dateisystem ist multi-threaded. Es ist NICHT portierbar (es benutzt das 386er-Taskswitching etc.) und wird vermutlich nie etwas anderes unterstützen als AT-Festplatten, da ich nur solche besitze ☹

Am 17. September 1991 wurde die erste Version 0.01 von Linux veröffentlicht.

Repräsentation nach Außen

Der Name Linux

Eine kurze Zeit lang wollte Linus Torvalds seinen Kernel den Namen Freax geben, eine Mischung aus Freak, Free und dem letzten Buchstaben von Unix. Als Alternative verwendete er auch den Namen Linux, was ihm aber zu egozentrisch klang. Der damalige Verantwortliche für den FTP-Server, Ari Lemmke, war mit dem Namen Freax nicht einverstanden und nannte das Unterverzeichnis ohne vorherige Diskussion Linux. Torvalds akzeptierte die Entscheidung, da es seiner Meinung nach auch der bessere Name war. Der Name setzte sich später als Bezeichnung für das Betriebsystem durch.

In den Jahren 1994 und 1995 gab es Probleme mit dem Markennamen „Linux“, da verschiedene Personen versuchten die Bezeichnung eintragen zu lassen. Dadurch wollten sie die Linux-Firmen zu Lizenzzahlungen zwingen. Letztlich wurde Linus Torvalds das Recht aber wieder zugesprochen. Dennoch muss jeder, der den Namen „Linux“ kommerziell einsetzt, seit 2000 eine Lizenz durch eine einmalige Zahlung erwerben.

Das Maskottchen: Tux

Wiki/Icons/tux.png
Tux, das Linux-Maskottchen

Linus kündigte 1996 ein Maskottchen für Linux an, seine Vorstellungen darüber findet man in seiner Biographie (Seite 151):

Aber Linus wollte keinen x-beliebigen Pinguin. Sein Pinguin sollte glücklich aussehen, so als hätte er gerade eine Maß Bier genossen und den besten Sex seines Lebens gehabt. […] Er sollte unverwechselbar sein. Deshalb […] hat das Linux-Maskottchen einen orangefarbenen Schnabel und orangefarbene Füße, so dass es wie ein Pinguin aussieht, dessen Mutter eine Ente war. Als hätte Daisy Duck sich auf einer Antarktis-Kreuzfahrt vergessen und einen wilden One-Night-Stand mit einem einheimischen Federvieh gehabt.

Entworfen wurde das Maskottchen von Larry Ewing. Es wurde Tux getauft, was für Torvalds UniX steht.

Lizenzierung

Linus gab Linux in frühen Entwicklungsstadien eine eigenen Lizenz, die er in seiner Biographie auf Seite 104 so beschreibt:

Du kannst das Betriebssystem umsonst nutzen, solange du es nicht verkaufst, und wenn du Veränderungen oder Verbesserungen vornimmst, musst du sie jedem als Quellcode zugänglich machen (nicht als Binärdateien, die unzugänglich sind). Wer diesen Regeln nicht zustimmt, hat kein Recht, den Code zu kopieren oder damit zu arbeiten.

Jedoch verfielen diese Bedenken nach der Bildung einer Community. Auch hatte er Tools für die Entwicklung benutzt, die unter der GPL lizenziert waren, u.a. die GCC und Bash. So entschied er sich Linux auch unter dieser zu veröffentlichen, was mit der Version 0.99 auch geschah.

Streit um Linux

Andrew Tanenbaum

Kurz nach dem Start des Projektes von Linus Torvalds, übte der Minix-Initiator einige Kritik an dem Aufbau des Linux-Kernels aus. Unter anderem störten ihn folgende Punkte: Das monolithische und damit veraltete Design (Minix hatte stattdessen einen Mikrokernel), die schlechte Portierbarkeit durch das Ausnutzen von Optimierungen für den Intel-386-Prozessor, das liberale Verteilungs- und Entwicklungsmodell, sowie einige unnötige Funktionen, die den Kernel nur aufblähen.

Microsoft

Entgegen dem Interesse von Linus Torvalds war das Verhältnis der beiden Seiten nicht gerade „optimal“. Sichtbar wurde dies, als 1998 die sogenannten Halloween-Dokumente an die Öffentlichkeit gerieten. Der bisherige Höhepunkt wurde 2004 erreicht, als Microsoft Studien in Auftrag gab, die die Nachteile von Linux auf Servern entgegen denen mit Windows zeigen sollten. Daraufhin äußerten zahlreiche Linux-Unternehmen, wie Novell, IBM oder Red Hat, ihre Gegenmeinung durch u.a. eigene Studien, Umfragen und Erfahrungsberichte. Im Jahr 2006 beschlossen Novell und Microsoft besser in den Bereichen Interoperabilität und Patentschutz zusammen zu arbeiten. Gerade durch den letzten Punkt wurden aber auch Nachteile geäußert [1], besonders für nicht-kommerzielle OpenSource-Entwickler. Erst seit kurzem versucht Microsoft offenbar die Spannung zwischen den beiden Betriebssystemen abzubauen. So reichte der Konzern anlässlich des 20-Jährigen Jubiläums ein Geburtstagsvideo 🇬🇧 ein.

SCO

SCO erhob 2003 gegen IBM die Vorwürfe, IBMs Entwickler hätten Teile von Unix nach Linux kopiert. In dem acht Jahre andauernden Rechtsstreit [2] wurden Novell schließlich die Rechte an Unix eingeräumt und SCO damit die Rechtsgrundlage entzogen.

Weitere Entwicklungen

Linus Torvalds übernahm 1993 als Lehrassistent den Kurs „Einführung in die Informatik“. In diesem gab er den Studenten die Aufgabe ihm eine Mail zu schreiben. Dabei bekam er von Tove Monni, Kindergärtnerin und sechsfache finnische Karatemeisterin, eine Einladung zum Rendezvous. Auch hierzu gibt es eine Bemerkung in seiner Biographie (zu finden auf Seite 132):

Ich heiratete die erste Frau, die mich elektronisch aufriss.

Nach ein paar Monaten zog er auch bei dieser ein, wo er, nach eigener Aussage, die längste Zeit ohne Computer verbrachte (die Militärzeit ausgeschlossen). '95 erhielt Torvalds ein Angebot für eine Praktikum bei Intel. Er lehnte jedoch aufgrund der schlechten Aussicht auf ein Visum und das noch nicht beendete Studium ab. 1996 verfasste Torvalds seine Masterarbeit über (wer hätte es anders erwartet) „Linux, a portable operating system“ (zu deutsch: Linux, ein portierbares Betriebssystem). Ungefähr 2 Tage darauf, am 5. Dezember 1996, wurde seine erste Tochter geboren. Am 22. Januar des Folgejahres heirateten Tove und Linus. So konnten sie auch leichter in die USA einreisen. Sie wollten nach Amerika, da Torvalds ein Jobangebot von Transmeta annahm. Dort arbeitete er an einem Interpreter für Transmetas Prozessoren. Zeitgleich koordinierte er weiterhin die Entwicklung des Linux-Kernels. 1997 wurden die Mitglieder der Familie Torvalds Millionäre: Red Hat sowie VA Linux, besser bekannt unter dem Namen SourceForge, schenkten ihnen Aktien in Höhe von 5.000 US-Dollar, die erst 1 Million US-Dollar wert waren und nach Abschluss der 180 Tage langen Sperrfrist schließlich 20 Millionen. 2003 gab er seinen Job bei Transmeta auf und begann seine Arbeit bei den Open Source Development Labs (kurz: OSDL). Seit 2007 betreut er Linux in Vollzeit bei der Linux Foundation 🇬🇧, einem Zusammenschluss der Free Standards Group und OSDL. Diese Non-Profit-Organisation wird durch Unternehmen finanziert.

Den Linux-Kernel findet man heutzutage in allen Lebensbereichen von normalen Desktops, sowie Smartphones über Server und Großcomputern bis hin zu (unbemerkten) Embedded-Geräten, wie Kühlschränke oder Fernseher 🇬🇧 .

Weitere Informationsquellen: