Warum bezeichnen die Leute Linux als Kernel und nicht als Betriebssystem?

Warum bezeichnen die Leute Linux als Kernel und nicht als Betriebssystem?

Warum wird Linux als Kernel und nicht als Betriebssystem bezeichnet? Meines Wissens ist der Kernel ein Teil des Betriebssystems.

Antwort1

Ein Linux-System besteht aus vielen verschiedenen Teilen.

Der zentrale Teil ist der Linux-Kernel. (Sie können ihn hier herunterladen:kernel.org, es wurde ursprünglich geschrieben vonLinus Torvaldsder es „Linux“ nannte.)

Der Kernel selbst ist ziemlich nutzlos. Er verwaltet alle Arten von Hardware und stellt eine Schnittstelle für Anwendungen bereit. Um ihn nutzen zu können, benötigen Sie daher Anwendungen, die diesen Kernel verwenden.

Auf der anderen Seite gibt es dieGNU-Projekt, eingeführt vonRichard Stallman. Seine Mission ist die Entwicklung eines komplett freien Betriebssystems mit allen dazugehörigen Standardtools.

Nach mehreren Jahren lief das GNU-Projekt gut, alle Standardtools waren geschrieben, aber es fehlte immer noch ein funktionierender Kernel.

So kam es, dass es gleichzeitig ein Projekt für einen Kernel ohne Tools (Linux) und ein Projekt mit allen Tools, aber ohne Kernel (GNU) gab. Da beide mit der gleichen UNIX-Mentalität geschrieben wurden, war es möglich, sie zu einem vollständigen Betriebssystem zu kombinieren, das die Leute treffend "GNU/Linux".

Aber selbst diese Art von einfachem „GNU/Linux“-System ist ohne die Software, die Sie darauf ausführen möchten, nicht sehr nützlich. (Wie ein Browser, ein Mailserver oder etwas in der Art.)

DeshalbVerteilungen(wie Debian, RedHat, SuSE, Arch, etc.) haben sich dazu entschieden, einen Linux-Kernel, die GNU-Tools und alle möglichen Anwendungen zusammen zu packen, um die Installation und Wartung zu vereinfachen. (Es gibt auch Distributionen, die andere Kernel verwenden. Sie können zum Beispiel einenDebian-Systemmit FreeBSD oder GNU-Hurd als Kernel.)

Für „normale“ Leute (die beispielsweise nur einen funktionierenden Webbrowser haben möchten) ist dieser Hintergrund viel zu detailliert und sie möchten nur einen einzigen Namen dafür. Wenn also jemand behauptet, er habe „Linux“ installiert, hat er in Wirklichkeit normalerweise eine Distribution installiert, die mit einem Linux-Kernel als einem Teil von vielen geliefert wurde.

Um es kurz zu machen: Oft wird der Name des zentralen Kernels einfach für das gesamte System verwendet.

Sie müssen entscheiden, was Sie als „Betriebssystem“ bezeichnen. Ist es nur das, was die Hardware verwaltet (wie Linux), oder ist es das, mit dem Sie interagieren (wie Ihre bevorzugte Desktop-Umgebung), oder vielleicht etwas dazwischen, wie ein einfaches (auf der Befehlszeile basierendes) GNU/Linux?

Antwort2

Ein Kernel ist ein Bestandteil eines größeren Betriebssystems. Bei Linux-Distributionen enthält das größere Betriebssystem normalerweise eine Basis von GNU-Tools. Daher bezeichnen viele Leute den Kernel als Linux und das gesamte Betriebssystem als „GNU/Linux“ (obwohl viele Leute diese Unterscheidung nicht treffen).

Man bezeichnet Linux als Betriebssystem, weil man einen Namen für das Gesamtbetriebssystem wählen muss, das aus der Summe seiner Teile besteht. Linux ist die Komponente auf unterster Ebene, die für den Benutzer leicht sichtbar ist, daher ist es natürlich, dass es diesen Namen und diese Rolle annimmt. Normalerweise bezeichnet man GNU grep nicht als „GNU grep“, sondern nennt es einfach „grep“ – für viele Benutzer sind GNU-Tools nicht so offensichtlich miteinander verbunden wie der Linux-Kernel.

Richard Stallman besteht sehr darauf, dass Linux „GNU/Linux“ genannt wird, da es viele GNU-Tools enthält (der C-Compiler ist vielleicht das wichtigste). Ich bin nicht so aufgeregt, und viele andere auch nicht.

Wenn Sie Klarheit wünschen: GNU/Linux bezieht sich eindeutig auf das Betriebssystem (und nicht auf den Kernel). „Linux“ ist außerhalb des Kontexts noch mehrdeutiger.

Antwort3

Soweit mir bekannt ist, ist der Kernel ein Teil des Betriebssystems.

Der Kernel ist der „Kern“ des Betriebssystems. Er stellt die meisten kritischen Dienste bereit. Starten, Beenden und Planen von Prozessen, Zuweisung von Speicher und Swap-Speicher an Prozesse, Interprozesskommunikation, Dateien, die unteren Ebenen des Netzwerkstapels, ein gewisses Maß an IO-Abstraktion.

Auf dem Kernel bauen wir einen Stapel anderer Komponenten auf. Einerseits ist der Kernel ohne zumindest einige dieser anderen Komponenten nicht sehr nützlich. Andererseits sind nur wenige dieser Komponenten wirklich obligatorisch und die meisten können durch etwas anderes ersetzt werden.

Welche dieser Komponenten genau zum „Betriebssystem“ gezählt werden sollen, ist daher nicht eindeutig.

Warum wird Linux als Kernel und nicht als Betriebssystem bezeichnet?

Zwei Gründe.

Erstens ist das strenggenommen wahr. Das Projekt namens „Linux“ pflegt nur einen Kernel. Es ist Aufgabe von Drittanbietern, eine Sammlung anderer Software zusammenzustellen, um daraus tatsächlich ein nützliches System zu machen.

Der zweite Grund ist, dass die Free Software Foundation etwas verärgert darüber ist, dass Linux alle Ehre bekommt. Vor allem, weil Linus ein Pragmatiker der freien Software ist und kein Idealist.

Das GNU-Projekt wurde von der FSF ins Leben gerufen, um einen kostenlosen Software-Ersatz für Unix zu schaffen. Sie schufen Ersatz für viele wichtige Komponenten, wie den Compiler, Binutils (Assembler, Linker usw.), libc (bietet sowohl die C-Standardbibliothek als auch die Wrapper, die die Systemaufrufschnittstelle des Kernels in POSIX umwandeln), Textutils, Shellutils und Fileutils (jetzt zusammengeführt als Coreutils).

Allerdings hatten sie Schwierigkeiten, einen Ersatz für den Unix-Kernel zu schaffen. 1987 entschied sich Stallman für ein System, das auf dem Mach-Mikrokernel und einer Sammlung von Daemons namens Hurd basierte. Der Start des Projekts verzögerte sich jedoch aufgrund von Lizenzproblemen um drei Jahre und die Entwicklung des Projekts stagnierte seitdem.

In der Zwischenzeit schrieb ein Student namens Linus seinen eigenen Kernel, der von MINIX inspiriert war. Ein Kernel allein macht noch kein Betriebssystem, daher wurden GNU-Komponenten auf den neuen Kernel portiert. Innerhalb weniger Monate war der Kernel weit genug fortgeschritten und es wurde genügend Software portiert, um das System „selbsthostend“ zu machen, d. h. es war möglich, Linux auf Linux aufzubauen. Bald darauf übernahm Linux die GPL und gewann rasch an Dynamik.

Ob gut oder schlecht, der Begriff Linux wurde nicht mehr nur zur Beschreibung des Kernels, sondern des gesamten Systems verwendet. Das ärgerte die FSF, die den Kernel nur als eine Komponente unter vielen betrachtete. Aus ihrer Sicht wurde ihr Projekt im Wesentlichen vereinnahmt.

Antwort4

Linux ist ein Kernel. Das ist der Hauptgrund, warum es Kernel genannt wird. Ubuntu, Android und Chrome OS sind grundsätzlich unterschiedliche Betriebssysteme. Anwendungen für Ubuntu laufen nicht unbedingt auf Android, genauso wie sie nicht unbedingt auf Windows laufen. Aus einem einfachen Grund: Das Betriebssystem ist anders. Linux-basierte Betriebssysteme unterscheiden sich auch stark aus Sicherheitsgründen. Chrome OS gilt als sehr sicher. Android ist nicht so sicher:http://www.forbes.com/sites/gordonkelly/2014/03/24/report-97-of-mobile-malware-is-on-android-this-is-the-easy-way-you-stay-safe/

verwandte Informationen