Ich möchte wissen, was der eigentliche Unterschied zwischen Unix und Linux ist.
- Teilen sie den gleichen Kernel?
- Ist Linux auf Unix aufgebaut?
- Funktionieren für Linux geschriebene Programme unter Unix und umgekehrt?
Ich möchte wissen, was der eigentliche Unterschied zwischen Unix und Linux ist.
Antworten:
Unix ist nicht eine Sache, es ist ein Name für eine große Familie verwandter Betriebssysteme, die sich in unterschiedlichem Maße, in unterschiedlichem Verlauf und in unterschiedlicher Architektur teilen. Solaris, DEC Unix, IRIX und HP-UX sind Unix-Varianten. Sie sind zu einem gewissen Grad mit Anwendungen kompatibel, da sie POSIX-Standards in unterschiedlichem Maße implementieren, was bedeutet, dass sie ähnliche Befehle und APIs verfügbar machen.
Ihre Kerne sind nicht gleich Kerne. Wenn Sie jedoch nach dem "Unix-Stammbaum" suchen, werden Sie eine faszinierende Geschichte darüber sehen, wie sich diese Varianten wie Organismen voneinander entwickelt haben. Das heißt, ein Fink und eine Schwalbe sind nicht dasselbe Tier, aber sie haben viel gemeinsam.
Linux ist ein von Grund auf neues Schreiben eines Unix-ähnlichen Betriebssystems. Ob Programme für ein Unix / Linux im Vergleich zu anderen geschrieben sind, ist eine komplexe Frage, aber in einigen Fällen ja.
Um die Antwort wirklich zu verstehen, ist es hilfreich, die Geschichte beider Betriebssysteme zu betrachten.
Unix wurde bei AT & T Bell Labs von Ken Thompson erfunden. Sein Kollege Dennis Ritchie hat dazu beigetragen und auch die C-Sprache erfunden und den C-Compiler geschrieben. Im Laufe der Jahre wurde Code auch von UC Berkeley beigesteuert, der unter anderem bei AT & T, Sun und IBM tätig war.
Es wurde schließlich in einer Reihe von Publikationen mit dem Namen POSIX standardisiert. Insgesamt war der Code urheberrechtlich geschützt, da er von AT & T urheberrechtlich geschützt und dann verkauft oder an andere Unternehmen lizenziert wurde, die ihn im Laufe der Jahre größtenteils umschrieben, jedoch verschiedene Rechte behielten.
In den 90er Jahren entstanden zwei Zweige von "freiem Unix". Eines davon war Linux , ein Klon, der so geschrieben wurde, dass er sich wie Unix verhält, ohne tatsächlichen Unix-Code zu enthalten.
Der andere Zweig existiert heute als NetBSD und wurde schnell von FreeBSD gefolgt und viel später von jedem anderen BSD, von dem Sie vielleicht gehört haben. Diese Projekte unterscheiden sich ein wenig von Linux darin, dass sie "Teilklone" sind. Sie enthalten eine Mischung aus "echtem" Unix-Quellcode (der Teil, der frei lizenziert wurde, hauptsächlich von UC Berkeley) und neu geschriebenem "Klon" -Code und anderem späterem Code, der im Rahmen von Umschreibungen oder zur Unterstützung moderner HW- und moderner Anwendungen auftaucht Posix-Spezifikationen.
Linux ist viel beliebter, weil NetBSD und FreeBSD eine Zeitlang in einem Rechtsstreit zwischen AT & T und UCB verwickelt waren. Obwohl sie zugunsten der BSDs beschlossen wurden, erholten sie sich nie von der Verzögerung, zumindest nicht in Bezug auf die Popularität.
Nein, Linux und kommerzielles Unix haben keinen gemeinsamen Kernel-Code, obwohl kommerzielles Unix und * BSD früher einiges gemeinsam hatten. Die Unix-Kernel der lizenzierten Hersteller enthalten Code, den sie selbst geschrieben haben, möglicherweise mit einem originalen AT & T-Code, der hier und da noch vorhanden ist. Der Linux-Kernel besteht aus Code, der von Linus Torvalds und anderen Autoren geschrieben wurde.
"Unix-Software" ist Software, die auf die Posix-APIs geschrieben wurde und normalerweise auf allen Versionen von Unix, Linux sowie NetBSD und FreeBSD ausgeführt wird. Theoretisch kann Posix SW auf "Nicht-Unix" -Systemen ausgeführt werden, aber das scheint nicht sehr gut zu funktionieren. Heutzutage ist "Unix" ein technisches Markenzeichen, wird jedoch eher informell als Bezeichnung für kommerzielles Unix, Linux und die BSD-Familie verwendet.
Wenn die meisten Leute über Unix sprechen, meinen sie ein "Unix-ähnliches Betriebssystem, das POSIX-kompatibel ist", wie es Linux ist.
Teilen sie denselben Kernel? Nein, Linux ist ein Kernel, kein Betriebssystem. Technisch gesehen verwenden Linux-Distributionen einen Linux-Kernel und ein GNU (siehe gnu.org) "userland". Das Userland sind die grundlegenden Programme und Bibliotheken usw., die große Anwendungen und Benutzeraufgaben mit der Low-Level-API des Kernels verbinden.
Ist Linux über Unix aufgebaut? Nein, es ist ein Klon. Es wurde entwickelt, um eine kostenlose, verwendbare Version von Unix auf einem Desktop-PC mit geringen Anforderungen bereitzustellen.
Können für Linux geschriebene Programme über Unix funktionieren und umgekehrt? Manchmal. Unter FreeBSD gibt es beispielsweise einen Linux-ABI-Emulator, der im Wesentlichen erkennt, dass Programme für Linux erstellt wurden, und eine andere Reihe von Kernel-Aufrufen zur Verfügung stellt. Ähnliches ist für Linux verfügbar, um Standard-Unix-System-V-Zeug (oder eine beliebte kommerzielle Version von Unix) auszuführen. Es wird jedoch nur selten verwendet, da die meisten Programme mit POSIX-kompatiblem Quellcode geliefert werden und problemlos unter Linux kompiliert werden können. Die meisten Binärprogramme für Unix sind auch direkt für Linux verfügbar. FreeBSD ist ein kleineres Unternehmen und hat diesen Luxus nicht. Unter Linux wird das System zum Laden von Binärdateien von anderen Systemen am häufigsten zum Ausführen von Java-Programmen, Windows-Programmen (obwohl dies nicht ratsam ist) usw. verwendet.
Unix ist eine Marke, daher kann Linux den Namen nicht verwenden. Unix ist die offizielle, alte Version (insofern es eine offizielle Version gibt), die nicht so benutzerfreundlich ist. Die meisten anderen Unix-Versionen wurden etwas besser entwickelt, funktionieren aber in der Praxis nicht unbedingt so gut. Das ist es wirklich. Viele der Unternehmen, die früher Unix verwendeten, verwenden jetzt Linux.
Wenn Sie die Unterschiede in verschiedenen Unix-ähnlichen Betriebssystemen sehen möchten, besorgen Sie sich eine Kopie von FreeBSD, OpenSolaris und Debian. Ich sage diese Distributionen speziell, weil sie leichter zu vergleichen sind, obwohl einige andere wie pc-bsd, nexenta und ubuntu wohl netter sind.
Ich denke, technisch gesehen ist GNU / Linux nicht weniger ein UNIX-Betriebssystem als eines der offiziellen UNIX-Systeme, aber es ist nur aus rechtlichen Gründen so, dass die Leute Linux als ein UNIX- ähnliches Betriebssystem bezeichnen, anstatt nur als ein "UNIX" -Betriebssystem .
Soweit Kernel betrifft, Linux ist ein Kernel. Wenn ein System also per Definition den Linux-Kernel verwendet, ist es ein Linux-System, kein UNIX-System.
Ist Linux über Unix gebaut
Linux wurde nicht "über" Unix erstellt, sondern als UNIX-Klon. Alle verschiedenen Gnu-Dienstprogramme (Bash usw.) wurden von Grund auf als Klone der entsprechenden Unix-Dienstprogramme geschrieben.
Ironischerweise wird Mac OS X mit einem UNIX-Kern mit bash, gcc und möglicherweise anderen GNU-Dienstprogrammen ausgeliefert. Das ist also ein UNIX-System, das Teile von GNU enthält und nicht umgekehrt, wie man es erwarten könnte.
UNIX-Verlauf Nicht die Antwort auf Ihre Fragen, aber vielleicht interessant.
UNIX ist ein urheberrechtlich geschützter Name. Nur große Unternehmen dürfen das UNIX-Urheberrecht und den Namen verwenden. Daher sind IBM AIX, Sun Solaris und HP-UX alle UNIX. Die Open Group verwahrt das UNIX-Markenzeichen als Vertrauenssache für die Branche und verwaltet das UNIX-Markenlizenzprogramm. Linux ist ein UNIX-Klon
Wenn Sie jedoch POSIX-Standards (Portable Operating System Interface) berücksichtigen, kann Linux als UNIX betrachtet werden. Um aus der offiziellen README-Datei des Linux-Kernels zu zitieren: Linux ist ein Unix-Klon, der von Linus Torvalds von Grund auf neu geschrieben wurde und von einem Team von Hackern aus dem gesamten Internet unterstützt wird. Es zielt auf POSIX-Konformität ab. Linux ist nur ein Kernel
Linux ist nur ein Kernel. Die Linux-Distribution umfasst GUI-Systeme, Installations- und Verwaltungstools, Compiler, Editoren usw. Die Linux-Distribution macht es
Die meisten UNIX-Betriebssysteme gelten als konkurrierendes Betriebssystem.
Wie ich bereits sagte, ist Linux nur ein Kernel, mit dem die Linux-Distribution das Betriebssystem komplett nutzbar macht. Die meisten UNIX-Programme enthalten AZ-Programme wie Editoren, Compiler usw. FreeBSD enthält beispielsweise AZ-Programme. Lizenz und Kosten
Linux ist kostenlos (wie in Bier [Freiheit]). Sie werden die beste Community-Unterstützung sehen. Viele UNIX-Versionen sind nicht kostenlos (dies ändert sich jedoch schnell, z. B. OpenSolaris / Solaris UNIX). Benutzerfreundlich
Linux gilt als benutzerfreundlichstes UNIX wie OS. Die Installation von Soundkarten, Flash-Playern und anderen Desktop-Extras ist ganz einfach. Endbenutzerperspektive
Die Unterschiede sind für den durchschnittlichen Endverbraucher nicht so groß.