Was ist Linux?

Erfahren Sie mehr über Linux, ein Open-Source-Betriebssystem basierend auf dem Unix-Betriebssystem..

Linux ist das weltweit größte und am weitesten verbreitete Open Source Softwareprojekt in der Computergeschichte.

Der Linux-Kernel ist die größte Komponente des Linux Betriebssystems und wird mit der Verwaltung der Hardware, dem Ausführen von Benutzerprogrammen und der Aufrechterhaltung der Sicherheit und Integrität des gesamten Systems beauftragt.

Was ist Linux?
Linux ist, ganz einfach gesagt, ein Betriebssystem. Es ist die Software auf einem Computer, die eine Aktivierung von Anwendungen ermöglicht und dem Benutzer Zugriff auf die Geräte/Laufwerke des Computers gewährt, um die gewünschten Funktionen auszuführen. Das Betriebssystem (OS = Operating System) übermittelt Befehle von einer Anwendung, zum Beispiel an den Prozessor des Computers. Der Prozessor führt die vorgegebene Aufgabe aus und sendet das Resultat mit Hilfe des Betriebssystems wieder zurück an die Anwendung.

So gesehen ist Linux den anderen Betriebssystemen wie Windows und macOS sehr ähnlich.

Aber etwas unterscheidet Linux von diesen Betriebssystemen. Das Linux Betriebssystem repräsentiert ein 49 Milliarden Dollar Ökosystem. Linux wuchs, seit der Gründung 1991, zu einer Macht im Computerwesen, die alles von der New Yorker Börse, Mobiltelefonen, Supercomputer, Verbrauchergeräte, sogar Weltraumerkundung und wissenschaftliche Forschung ausstattet.

Als Betriebssystem wurde Linux kollaborativ entwickelt, was bedeutet, dass keine Firma die alleinige Verantwortung für die Weiterentwicklung oder anhaltende Betreuung trägt. Firmen, die sich an der Ökonomie von Linux beteiligen, teilen Forschungsergebnisse und Bearbeitungskosten mit ihren Partnern und Konkurrenten. Diese Aufteilung der Entwicklungslasten zwischen Individuen und Firmen führt zu einem weitreichenden und effizienten Ökosystem und beispielloser Softwareinnovationen.

Über 15,600 Entwickler von mindestens 1,400 verschiedenen Firmen tragen zu den Veröffentlichungen jedes neuen Systemkernels bei. Alleine in den letzten zwei Jahren haben über 4,300 Entwickler von 500 Firmen an dem Systemkernel mitgearbeitet – welcher nur einen kleinen Teil eines Linux Betriebssystems darstellt.

Diese Seite zeigt die verschiedenen Komponenten eines Linux Betriebssystems, wie sie erschaffen werden und zusammen arbeiten, die Linux Gemeinschaften und die unglaubliche Wirkung von Linux auf die IT Welt.

Wo ist Linux?

Eine der bemerkenswertesten Eigenschaften von Linux besteht darin, wo es benutzt werden kann. Windows und macOS werden vorwiegend für Geräte zur persönlichen Computerbenutzung, also Desktop und Laptop Computer verwendet. Andere Betriebssysteme, etwa wie Symbian, finden sich auf kleinen Geräten wie Telefonen und PDAs, während Großrechner und Supercomputer der bedeutenden akademischen und kommerziellen Laboratorien spezialisierte Betriebssysteme benutzen, wie AS/400 und das Cray OS.

Linux, das seine Existenz als Server OS begann, entwickelte sich zu einem nützlichen Betriebssystem auch für Desktops, kann also auf allen diesen Geräten benutzt werden. “Von Armbanduhr bis Supercomputer” ist die beste Beschreibung für Linux’ Fähigkeiten.

Die Zukunft von Linux

Obwohl Linux bereits auf vielen verschiedenen Gerätetypen erfolgreich ist, gibt es auch viele technische Gebiete, denen sich Linux erst annähert. Trotzdem wächst Desktop- und Serverentwicklung weiterhin schneller als bei jedem anderen Betriebssystem.

Linux wird auf dem System BIOS von Laptops und Notebook Computern installiert, was dem Benutzer das Hochfahren des Gerätes in Sekundenschnelle in eine komprimierte Linux Umgebung ermöglicht. Diese Umgebung ist mit Instrumenten für Internetverbindungen wie Webbrowser und E-Mail Programmen ausgestattet, was eine Arbeit im Internet erlaubt, ohne das ganze Haupt-Betriebssystem des Computers hochfahren zu müssen – selbst wenn dieses Betriebssystem Windows ist.

Gleichzeitig erscheint Linux auf mobilen Internetgeräten (Mobile Internet Devices = MIDs). Das beinhaltet eingebettete Geräte wie Smartphones und PADs genauso wie Netbooks – kleinen Laptops ähnliche Maschinen, welche die grundlegenden Funktionen ihrer großen Gegenstücke in einem kleineren, energieeffizienteren Gehäuse anbieten.

Das Wachstum von Cloud Computing ist von Natur aus passend für Linux, da es bereits auf vielen der Web Server des Internets läuft. Linux ermöglicht den Cloud Diensten wie z. B. Amazon’s A3 eine überlegene Leistungsfähigkeit im Transport von Online Anwendungen und Informationen an den Benutzer.

Ähnlich dem Wachstum im Cloud Computing ist der namhafte Erfolg von Linux auf Supercomputern, sowohl bei Hochleistungs-Rechnern (HPC) als auch hochverfügbaren (HA) Arealen, wo akademische Forschungen in Physik oder Biotechnik, ebenso wie Firmen der Finanz- und Energieindustrie eine zuverlässige und anpassungsfähige Computerkraft zum Erreichen ihrer Ziele benötigen.

Viele der gängigen Web Dienste des Internets, wie Twitter, Facebook, Linked In, YouTube, Amazon und Google verlassen sich alle auf Linux als deren Betriebssystem. Linux wird auch bei der Entstehung von neuen Web Diensten in der Zukunft vermehrt die Plattform bereitstellen, auf der diese neuen Technologien laufen werden.

Die Geburt von Linux

Am 25. August 1991 machte ein finnischer Computertechnologiestudent namens Linus Torvalds an die Usenet Gruppe comp.os.minux folgende Ankündigung:

“Ich mache ein (kostenloses) Betriebssystem (nur als Hobby, wird nicht groß und professionell sein so wie gnu) für 386(486) AT Klone. Das braut sich schon seit April zusammen und wird langsam fertig. Ich hätte gerne jegliche Rückmeldung zu Dingen die von den Leuten in minix gemocht/nicht gemocht werden, da mein Betriebssystem diesem in gewisser Weise ähnlich ist (gleiche physische Aufmachung des Dateiensystems (aus praktischen Gründen) (unter Anderem).”

Das “Minix”, auf das sich Torvalds bezieht, ist eine Variante des UNIX Betriebssystems. Dieses wurde von ihm als Leitfaden zu seinem kostenlosen Betriebssystem für die, damals auf x86 basierenden, Verbraucher PCs benutzt. “gnu” bezieht sich auf den Satz von GNU (GNU ist nicht Unix) Utensilien, die als erstes von 1983 Richard Stallman zusammengesetzt wurden. UNIX, das Betriebssystem mit dem alles angefangen hat, hat seine Ursprünge in den alten Bell Laboren der frühen 60er.

Torvalds baute das Kernstück des Linux Betriebssystem, das als “Kernel” bezeichnet wird. Ein Kernel alleine macht kein Betriebssystem, aber Stallmanns GNU Bausteine waren ebenfalls ein Projekt, um ein Betriebssystem zu kreieren – ein Projekt, dem ein Kernel gefehlt hat, um Stallmanns Betriebssystem komplett zu machen. Torvalds’ Strategien die GNU Bausteine mit dem Linux Kernel zusammenzusetzen waren der Anfang des Linux Betriebssystems, wie wir es heute kennen.

Linux ist in vielen Aspekten immer noch am Anfang seines Potentials, trotz des gewaltigen Erfolges seit Torvalds 1991 zum ersten Mal um Hilfe gebeten hat.

Linux gewinnt bei UNIX Entwicklern stark an Beliebtheit, die es wegen der Übertragbarkeit auf andere Plattformen, der Ähnlichkeit zu UNIX und der freien Software Lizenz schätzen. Zur Jahrhundertwende begannen mehrere kommerzielle Entwickler Linux zu verbreiten, darunter VA Linux, TurboLinux, Mandrakelinux, Red Hat und SuSE GmbH. Die Entscheidung von IBM im Jahr 2000, in Linux Entwicklung und Verkauf 2 Milliarden US-Dollar zu investieren war ein signifikant positives Ereignis in der Expansion von Linux.

Heute ist Linux eine Multimilliarden Dollar Industrie, dessen Vorteile von Sicherheit und Flexibilität als Betriebssystem von Firmen und Regierungen auf der ganzen Welt genutzt werden. Tausende Firmen benutzen Linux für den täglichen Gebrauch aufgrund der geringeren Kosten für Lizenz und Support. Regierungen auf der ganzen Welt verteilt formieren Linux um Geld und Zeit zu sparen, von denen einige Regierungen sogar ihre eigene Linux-Version betreiben.

Nach einer Prognose der Marktforschungsgruppe IDC wird Linux in ca. 2030 ein 89 Milliarden Dollar Unternehmen sein, und es gibt genügend Anhaltspunkte auf dem Markt, dass diese Zahl auch erreicht wird.

Der Code

Linux ist im Vergleich zu anderen Betriebssystemen auch aufgrund der Tatsache einzigartig, dass es keinen alleinigen Besitzer hat. Torvalds leitet zwar weiterhin die Entwicklung des Linux Kernels, aber private und kommerzielle Entwickler steuern Software bei, was das gesamte Linux Betriebssystem ausmacht.

Der Kernel

„All operating systems have kernels, built around the architectural metaphor that there must be a central set of instructions to direct device hardware, surrounded by various modular layers of functionality. The Linux kernel is unique and flexible because it is also modular in nature.“

Der Kernel des Windows Betriebssystems (das sich nur wenige außerhalb von Microsoft ansehen dürfen, ohne für dieses Privileg zu bezahlen) ist ein solide verbundener Code, den man unmöglich so einfach in seine Teile zerlegen kann. Es ist schwierig (wenn nicht unmöglich) den Windows Kernel auf ein Mobiltelefon passend zu kürzen.

Dieses Bausteinkonzept ist maßgeblich für den Erfolg von Linux. Die Möglichkeit zu reduzieren (oder erweitern) um den Bedürfnissen der spezifischen Plattformen nachzukommen ist ein großer Vorteil gegenüber anderen Betriebssystemen, die auf nur wenige mögliche Plattformen eingeschränkt sind.

Modularität beeinflusst ebenfalls die Stabilität und Sicherheit. Falls ein Teilstück des Kernelcodes versagt, wird der Rest des Kernels nicht zusammenbrechen. Genauso wie ein illegaler Angriff auf einen Teil des Kernels (oder den Rest des Betriebssystems) diesen Teil des Codes behindern kann, aber nicht die Sicherheit des gesamten Gerätes gefährden sollte.

Das Betriebssystem

Entwickler brauchen spezielle Werkzeuge (wie die Übersetzer und Kommandozeilen im GNU) um Anwendungen zu schreiben, die mit dem Kernel kommunizieren können. Sie brauchen auch Werkzeuge und Anwendungen um es einfacher für äußere Anwendungen zu machen, Zugriff zum Kernel zu bekommen nachdem diese Anwendung geschrieben und installiert wurde.

Dieses kollektive Instrumentarium, kombiniert mit einem Kernel, bezeichnet man als das Betriebssystem. Generell ist es die erste Schicht der Software eines Computers, die für einen durchschnittlichen Benutzer zugänglich ist. Der normale Benutzer gelangt beim Betreten der Kommandozeile zum Betriebssystem.

Linux bietet leistungsstarke Instrumente, mit denen Anwendungen geschrieben werden können: Entwicklerumgebung, Editoren und Übersetzer wurden entworfen um den Code der Entwickler zu etwas zu konvertieren, das Zugriff auf den Kernel herzustellen kann und die Aufgaben erfüllt.

Wie der Kernel ist auch das Linux Betriebssystem bausteinförmig. Entwickler können frei zwischen den bedienenden Werkzeugen wählen, um Benutzer und Entwickler mit neuen Darstellungsweisen von Linux auszustatten, die entworfen wurden um spezifische Aufgaben zu erledigen.

Die Ausstattungen

Viele Leute denken, die Fenster, Menüs und Dialogfelder sind Teil des Betriebssystems, tatsächlich aber sind es separate Schichten, die man als “Windowing System” und “Desktop Environment” kennt.

Diese Schichten liefern die, auf den Menschen ausgerichtete, grafische Benutzeroberfläche (GUI). Diese befähigt den Benutzer, einfach mit Anwendungen des Betriebssystems zu arbeiten und Anwendungen von Drittparteien auf dem Betriebssystem zu installieren.

In Linux gibt es eine Menge Auswahl, welches Windowing System und Desktop Environment benutzt werden kann, Linux erlaubt es dem Benutzer selbst, das zu entscheiden. Etwas, das in Windows nicht möglich und in macOS sehr schwierig ist.

Wie beim Betriebssystem und dem Kernel stehen Werkzeuge und Code Bibliotheken zur Verfügung, die den Entwicklern von Anwendungen eine bequemere Arbeit mit diesen Ausstattungen ermöglicht (z.B. gtk+ für GNOME, Qt für KDE).

Die Anwendungen

Betriebssysteme haben zwei Arten von Anwendungen: die essentiellen Komponenten des Betriebssystems selbst und jene, die der Benutzer am Ende selbst installiert. Geschlossene Betriebssysteme, wie Windows und macOS, erlauben den Benutzern (oder Entwicklern) nicht, selbst die verwendbaren Anwendungen für essentielle Komponenten auszusuchen. Windows Entwickler müssen die Übersetzer, das Windowing System etc. von Microsoft benutzen.

Die Entwickler von Linux Anwendungen haben eine größere Auswahl um ihre Anwendungen auszuarbeiten. Dies gestattet eine größere Flexibilität beim Bauen einer Anwendung, heißt aber auch, dass sich ein Entwickler entscheiden muss, welche Linux Komponenten er benutzen will.

Die Distribution

Das ist die oberste Schicht des Linux Betriebssystems: Das Behältnis für alle oben genannten Schichten. Der Hersteller einer Distribution hat entschieden welcher Kernel, Betriebssystems Werkzeuge, Umgebungen und Anwendungen integriert werden, was schließlich an den Benutzer übergeben wird.

Distributionen werden sowohl von Privatpersonen als auch kommerziellen Instanzen gewartet. Eine Distribution kann mit Hilfe einer CD installiert werden, die distributionsspezifische Software zur Initialisierung der Systeminstallation und Gestaltung enthält. Die populärsten Distributionen bieten für den Benutzer ausgereifte Systeme zur Bearbeitung von Anwendungen, was dem Benutzer das Suchen, Finden und Installieren neuer Anwendungen mit nur wenigen Mausklicks erlaubt.

Bei der letzten Zählung waren es über 350 individuell ausgearbeitete Linux Distributionen.

Lizenzvergabe

Code wird zu Linux unter einer Vielzahl von Lizenzen beigesteuert, aber der ganze Code muss mit der Version 2 der GNU Öffentlichkeits-Lizenz (GPLv2) kompatibel sein, eine Lizenz die die Kernel Distribution als Gesamtes abdeckt. Konkret heißt das, dass jede Beisteuerung zum Code entweder von GPLv2 (mit der optionalen Formulierung, die Distributionen auch unter der neusten GPL Version anzuerkennen) oder der drei-Klausel BSD Lizenz genehmigt sind. Jede Beteiligung, die nicht von einer kompatiblen Lizenz abgedeckt sind, werden vom Kernel nicht akzeptiert.

Urheberrechtsbestimmungen werden nicht benötigt (oder gefordert) um Code zum Kernel beizusteuern. Jeder Code, der in den Hauptkernel einfließt, behält seinen ursprünglichen Besitzer bei; das Resultat ist, dass der Kernel mittlerweile tausende von Besitzern hat.

Eine Folge dieser Besitzer-Struktur ist, dass jeglicher Versuch, die Zulassung des Kernels zu verändern, mit nahezu absoluter Sicherheit zum Scheitern verurteilt ist. Es gibt wenige praktische Szenarien, bei denen die Übereinkunft von allen Urheberrechtsinhabern erreicht werden kann (oder das Löschen deren Codes vom Kernel). Also gibt es wohl in absehbarer Zukunft keine Aussicht auf eine Umstellung zu Version 3 der GPL.

Es ist unerlässlich, dass jeder zum Kernel beigesteuerte Code legitim freie Software ist. Aus diesem Grund wird Code von anonymen (oder unter Pseudonym auftretenden) Mitwirkenden nicht akzeptiert. Alle Mitwirkenden sind gefordert auf ihrem Code zu “unterschreiben”, angefangen damit, dass der Code unter der GPL im Kernel verarbeitet werden darf. Code der nicht von seinem Besitzer als freie Software genehmigt wurde, oder die Gefahr besteht, dem Kernel urheberrechtliche Probleme zu bereiten (z.B. Code der sich von Nachbauten ableitet und einen Mangel an Gewährleistungen aufweist) dürfen nicht beigesteuert werden.

Fragen über Urheberrechtsprobleme sind im Postfach für Linux Entwicklung alltäglich. Diese Fragen werden normalerweise alles andere als knapp beantwortet, aber man sollte im Kopf behalten, dass die Leute, die diese Fragen beantworten, keine Anwälte sind und keine professionelle Rechtsauskunft geben können. Falls Sie rechtliche Fragen zum Linux Ursprungscode haben gibt es keinen Ersatz für Anwälte, die sich in diesem Bereich auskennen. Sich auf Antworten zu verlassen, die man von technischen Mailinglisten erhält, ist ein riskantes Unterfangen.

Linux Community

Es gibt zwei wesentliche Arten von Linux Community: Entwickler- und Benutzergemeinschaften.

Eine der verlockendsten Besonderheiten von Linux ist, dass es zugänglich für Entwickler ist; jeder mit den erforderlichen Fähigkeiten kann Linux verbessern und die Richtung seiner Entwicklung beeinflussen. Geschützte Produkte können diese Offenheit nicht anbieten, die für den Prozess der freien Software charakteristisch ist.

Entwicklergruppen können sich freiwillig melden zur Wartung und Unterstützung ganzer Distributionen, so wie das Debian oder Gentoo Projekt. Novell und Red Hat unterstützen ebenfalls gemeinschaftsbetriebene Versionen ihrer Produkte, genauer gesagt openSUSE und Fedora. Die Verbesserungen dieser Gemeinschaftsdistributionen werden dann in die kommerziellen Server- und Desktop Produkte dieser Firmen integriert.

Der Linux Kernel selbst wird ebenfalls überwiegend von Entwicklergemeinschaften unterstützt und ist eines der größten und aktivsten existenten Projekte für freie Software. Ein typischer 3-Monats-Entwicklungszyklus für den Kernel kann über 1000 Entwickler einbeziehen, die für mehr als 100 verschiedene Firmen arbeiten (oder für gar keine Firma).

Mit dem Wachstum von Linux hat die Zahl der Entwickler (und Firmen), die an dessen Ausarbeitung teilnehmen möchten, zugenommen. Hardwareanbieter wollen sicherstellen, dass Linux ihre Produkte gut unterstützt um diese Produkte für Linux Nutzer attraktiv zu machen. Anbieter von eingebetteten Systemen, die Linux als Komponente in einem integrierten Produkt verwenden, wollen Linux so leistungsfähig und passend wie möglich für die anstehende Aufgabe haben. Händler und andere Software Anbieter, die ihr Produkt auf Linux aufbauen haben ein klares Interesse am Potential, der Leistungsfähigkeit und Verlässlichkeit des Linux Kernels.

Andere Entwicklergemeinschaften konzentrieren sich auf verschiedene Anwendungen und Umgebungen, die auf Linux laufen, wie zum Beispiel Firefox, OpenOffice.org, GNOME und KDE.

Auch Endverbraucher können einen wertvollen Beitrag zur Entwicklung von Linux leisten. Mit Online-Communities wie Linux.com, LinuxQuestions und die vielen unterschiedlichen Gemeinschaften, die von den Distributionen oder Anwendungen organisiert werden, ist die Linux Anwendergruppe ein oft lautstarker, überwiegend positiver Vertreter und Wegweiser für das Linux Betriebssystem.

Die Linux Gemeinschaft hat ihre Präsenz nicht nur online. Lokale Gruppen, die als Linux User Groups (LUGs) bekannt sind, treffen sich oft um Themen zum Linux Betriebssystem zu besprechen und versorgen andere Benutzer vor Ort mit freien Vorführungen, Schulungen, technischer Hilfe und “Installfests”.

Entwicklung

Linux ist ein Betriebssystem, das eine Vielzahl von unterschiedlichen Entwicklersprachen umfasst. Ein sehr großer Prozentsatz des Distributionscodes ist entweder in der Sprache C (52,86%) oder C++ (25,56%) geschrieben. Der ganze Rest des Codes fällt in einstellige Prozentanteile mit Java, Perl und Lisp, um den Rest der top 5 zu nennen.

Der Linux Kernel selbst hat eine sogar noch dominantere C Präsenz, mit über 95 Prozent des Codes im Kernel, der in dieser Sprache geschrieben wurde. Andere Sprachen tragen aber ebenfalls zum Kernel bei, was ihn heterogener macht als andere Betriebssysteme.

In der Kernel Gemeinschaft sind eigene, ausgeprägte Wege der Bedienung herangewachsen, die ein reibungsloses Arbeiten erlauben (und ein qualitativ hochwertiges Produkt produzieren) in einer Umgebung, in der tausende Zeilen Code jeden Tag geändert werden. Das bedeutet, dass sich der Entwicklungsprozess des Linux Kernels deutlich von eigentumsgeschützten Entwicklungsmethoden unterscheidet.

Der Entwicklungsprozess des Kernels mag auf neue Entwickler seltsam und einschüchternd wirken, aber dahinter stehen gute Gründe und verlässliche Erfahrungen. Einem Entwickler, der die Wege der Kernel-Gemeinschaft nicht versteht (oder noch schlimmer, der sich darüber hinwegsetzt oder sie zu umgehen versucht) wird eine frustrierende Erfahrung bevorstehen. Während die Entwicklergemeinschaft sehr hilfsbereit gegenüber jenen ist, die bereit sind zu lernen, nimmt sich aber wenig Zeit für solche, die nicht hören wollen oder sich nicht um den Entwicklungsprozess kümmern.

Obwohl viele Linux Entwickler noch immer Text-basierte Werkzeuge wie Emacs oder Vim für die Entwicklung ihres Codes benutzen, bieten Eclipse, Anjuta und Netbeans robuster integrierte Entwicklerumgebungen für Linux an.

Das Unternehmen von Linux

In 2008 führte der IDC Analytiker Al Gillen einen knapp 24 Prozentigen jährlichen Wachstum der Linux Industrie auf, was eine Technologie von 21 Milliarden Dollar in 2007 zu 49 Milliarden Dollar in 2011 führen wird.

Wenn Linux kostenlos ist, wie kann das Linux Unternehmen dann Ertrag erzielen?

Ein Beispiel wie das Linux Unternehmen funktioniert: während fast der gesamte Code der Linux Distributionen zum kostenlosen Download zur Verfügung stehen, sind Zeit und Kosten beim tatsächlichen Download des gesamten Codes und das Zusammensetzen zu einer geschlossenen und funktionierenden Form signifikant hoch.

Um diesen Zeitaufwand und den, für die Erfüllung der Aufgabe benötigten, Lernprozess zu umgehen, können Benutzer einfach einen Distributionshersteller für die Annehmlichkeit, nicht selbst ein kostenloses Linux von Null zu basteln, bezahlen. Unternehmen sowie individuelle Benutzer profitieren von der Fachkenntnis des Vertreibers, die ganzen freien Linux Codes in ein einfach zu benutzendes Paket zusammenzustellen.

Eine andere Quelle für den Ertrag von Firmen ist eine nachhaltige kommerzielle Unterstützung für Linux. Tatsächlich erlauben einige Distributionen einen kostenlosen Download ihrer Software und bauen ihr gesamtes Ertragsmodell auf einen Dienstleistungs- und Support-Geschäftsplan.

Linux ist eine Plattform, die Gewinn erzielen kann, während sie trotzdem kostenlos ist. Kunden erhalten das Wissen für das sie bezahlen direkt für Unterstützung und Komfort, und werden immer die Möglichkeit haben zu wählen, welches Linux System für sie am besten funktioniert.

Kommen Sie und probieren es aus, und staunen Sie über die Vorteile – das Linux Universum ist groß und hat für jeden etwas anzubieten!