it-swarm.com.de

Ist Linux ein Unix?

Es gibt also viele verschiedene Versionen von Unix: HP-UX, AIX, BSD usw. Linux wird eher als Unix-Klon als als Implementierung von Unix betrachtet. Sind alle "echten" Unices tatsächliche Nachkommen des Originals? Wenn nicht, was unterscheidet Linux von Unix?

194
Shawn J. Goff

Das hängt davon ab, was Sie unter "Unix" und unter "Linux" verstehen.

  • UNIX ist eine eingetragene Marke von The Open Group . Die Marke hat eine ereignisreiche Geschichte hinter sich und es ist nicht ganz klar, dass sie aufgrund der weit verbreiteten Verwendung von „Unix“ in Bezug auf Unix-ähnliche Systeme nicht generisch ist (siehe unten). Derzeit gewährt die Open Group die Verwendung der Marke für jedes System, das eine Single UNIXZertifizierung besteht. Siehe auch Warum gibt es ein *, wenn Unix im Internet erwähnt wird? .

  • nix ist ein Betriebssystem, das 1969 bei Bell Labs geboren wurde. Verschiedene Unternehmen haben Code verkauft und verkaufen ihn immer noch, der von diesem ursprünglichen System abgeleitet ist, zum Beispiel AIX , HP-UX , Solaris . Siehe auch Evolution von Betriebssystemen unter Unix .

  • Es gibt viele Systeme, die Unix-ähnlich sind, da sie Programmierern, Benutzern und Administratoren ähnliche Schnittstellen bieten. Das älteste Produktionssystem ist das Berkeley Software Distribution , das sich allmählich von Unix-basiert (d. H. Mit Code, der von der ursprünglichen Implementierung abgeleitet wurde) zu Unix-ähnlich (d. H. Mit einer ähnlichen Schnittstelle) entwickelt hat. Es gibt viele BSD-basierte oder BSD-abgeleitete Betriebssysteme: FreeBSD , NetBSD , OpenBSD , Mac OS X Andere Beispiele sind OSF/1 (jetzt eingestellt, es war ein kommerzielles Unix-ähnliches nicht-Unix-basiertes System), Minix (ursprünglich ein Spielzeug-Unix-ähnliches Betriebssystem, das als Lehrmittel verwendet wird (jetzt ein in die Produktion eingebettetes Unix-ähnliches System), und am bekanntesten Linux .


  • Genau genommen ist Linux ein Betriebssystemkernel, der wie der Unix-Kernel entwickelt wurde.

  • Linux wird am häufigsten als Name für Unix-ähnliche Betriebssysteme verwendet, die Linux als Kernel verwenden. Da viele der Tools außerhalb des Kernels Teil des GNU-Projekts sind, werden solche Systeme häufig als GNU/Linux bezeichnet. Alle wichtigen Linux-Distributionen bestehen aus GNU/Linux und anderer Software.

  • Es gibt Linux-basierte Unix-ähnliche Systeme, die nicht viele GNU Tools) verwenden, insbesondere in der eingebetteten Welt, aber ich denke, keines von ihnen beseitigt GNU Entwicklungstools, insbesondere GCC .

  • Es gibt Betriebssysteme mit Linux als Kernel, die jedoch nicht Unix-ähnlich sind. Am bekanntesten ist Android , das keine Unix-ähnliche Benutzererfahrung (obwohl Sie eine Unix-ähnliche Befehlszeile installieren können) oder Administratorerfahrung oder (meistens) Programmiererfahrung („native“) bietet ”Android Programme verwenden eine API, die sich von Unix völlig unterscheidet).

In jeder Hinsicht ist eine typische moderne Linux-Distribution (Ubuntu, Debian, Red Hat, Fedora, Slackware usw.) ein Unix, aber genau genommen kann kein System behaupten, Unix zu sein, ohne zertifiziert zu sein. Stattdessen sagen die Leute, dass sie es sind Unix-ähnlich. Sie sind von Unix inspiriert und setzen seine Kultur fort.

Dies gilt auch für BSD-Systeme.

Mac OS X ist Unix-zertifiziert, daher ist es sowohl im Namen als auch in der Tat Unix. (und es basiert tatsächlich auf BSD).

Da Linux selbst nur ein Kernel ist, kann es zum Erstellen von Nicht-Unix-ähnlichen Systemen (wie Android) verwendet werden.

60
hasen

Linux ist eher "Unix-ähnlich", also könnte man es einfach als Klon bezeichnen, dasselbe gilt für BSDs (obwohl BSDs zugegebenermaßen näher an Unix als Linux betrachtet werden könnten).

Die Hauptsache, die Linux den Unix-ähnlichen Titel verleiht, ist die Tatsache, dass es nahezu vollständig kompatibel ist mit POSIX (Portable Operating System Interface [für Unix]) Standards, die sich im Laufe der Zeit aufgebaut haben.

Der andere Schlüssel ist das Vererbung von Code usw. , wie auf Wikipedia gezeigt, stammt Linux nicht aus Unix-Quellen, sondern ist so ziemlich von Grund auf neu erstellt (dies ist jedoch umstritten).

Im Wesentlichen ist die Hauptsache, die Unix von Linux unterscheidet, die Abstammung und die Standards, die es erfüllt.

23
N J

Die gewählte Antwort erklärt es ziemlich ausführlich, aber Sie müssten sich eine ganze Dokumentation ansehen, um alle Details zwischen der ersten UNIX-Entwicklung und dem Ausgang von Linux zu erfahren.

Zuerst muss man bedenken, dass Linux der Kernel ist, der von Linus und anderen Programmierern erstellt wurde. Er entschied sich dafür, es mit der GPL zu veröffentlichen, die zu dieser Zeit eine Lizenz der FSF (RMS und anderer Leute) war, die auch ihren eigenen Kernel und ihre eigene GNU entwickelten.

Was wir normalerweise als Linux bezeichnen, ist zunächst der Kernel sowie alle anderen Tools, die ursprünglich aus dem Projekt GNU] stammen. Diese beiden Projekte unterscheiden sich historisch, da sich der Kernel zu dieser Zeit vom FSF unterscheidet Leute wurden aufgegeben, um den Linux-Kernel zu bevorzugen, der viel besser war.

Ich erinnere mich, dass es einen Dokumentarfilm gibt, den Sie sich unbedingt ansehen sollten. Ich finde ihn wichtig für Ihre Programmierkultur.

Eine andere Sache, die Sie berücksichtigen müssen, wenn Sie an "* nix" denken, ist auch alles, was POSIX und andere architekturstandardisierte Dinge betrifft. Es ist Gegenstand des Betriebssystemdesigns/der Betriebssystemforschung, definiert jedoch genau, wie die beteiligten Betriebssysteme funktionieren, und ist entscheidend, wenn ein Kernel gut mit seinen Tools arbeitet.

11
jokoon

Es gibt bereits viele großartige Antworten, aber ich dachte, die Ansichten des großartigen Dennis Ritchie (Mitschöpfer von Unix) wären eine interessante Ergänzung zu den anderen eher technischen Antworten.

Es scheint, dass Dennis Ritchie Linux als legitimes Unix-Derivat ansah. In einem 1999 Interview für LinuxFocus.org wurde er gefragt,

wie beurteilen Sie die Linux-Dynamik und die Entscheidung vieler Unternehmen, Software dafür zu entwickeln?

Seine Antwort auf die Frage war

Ich finde das Linux-Phänomen sehr erfreulich, weil es so stark auf der Basis von Unix basiert. Linux scheint eines der gesündesten direkten Unix-Derivate zu sein, obwohl es auch die verschiedenen BSD-Systeme sowie die offizielleren Angebote der Workstation- und Mainframe-Hersteller gibt. Ich kann natürlich nicht anders, als zu beobachten, dass die von Unix abgeleitete "freie Quelle" genau unter der gleichen Art von Fragmentierung und Streit zu leiden scheint, die in der Geschäftswelt aufgetreten ist und immer noch auftritt.

6

Historisch gesehen hat Linus Torvalds einen verbesserten Klon von Minix OS erstellt. Die Entwicklung von Linux konzentriert sich nicht auf eine bestimmte Plattform und einen bestimmten Kundenstamm, und Linux-Entwickler verfügen über eine Vielzahl von Erfahrungen und Perspektiven. Betriebssysteme wie HP-UX, AIX, Solaris und andere werden meist für Anbieter geschärft.

In der Linux-Community gibt es keine strengen Standardtools oder -umgebungen. Dieser Mangel an Standardisierung führt zu erheblichen Inkonsistenzen unter Linux. Für einige Entwickler ist die Möglichkeit, die besten Leistungen anderer Betriebssysteme zu nutzen, ein Plus, aber es ist nicht immer bequem, UNIX-Elemente unter Linux zu kopieren, wenn beispielsweise die Gerätenamen in Linux von AIX übernommen werden können, während die Tools für Die Arbeit mit dem Dateisystem konzentriert sich auf HP-UX. Inkompatibilitäten dieser Art treten auch zwischen verschiedenen Linux-Distributionen auf.

1
Quarind

Unix, ursprünglich UNICS (UNiplexed Infomation and Computing Service).

Unix (Marke UNIX) ist eine Familie von Multitasking-Mehrbenutzer-Computerbetriebssystemen, die vom ursprünglichen AT & T Unix abgeleitet sind. Die Entwicklung begann 1969 und wurde im Oktober 1973 außerhalb von Bell abs angekündigt.

Verschiedene akademische und kommerzielle Unix-Varianten von Anbietern wie der University of California, Berkeley (BSD), Microsoft (Xenix), IBM (AIX) und Sun Microsystems (Solaris).

  • BSD ( [~ # ~] b [~ # ~] erkeley [~ # ~] s [~ # ~] oftware [~ # ~] d [~ # ~] istribution) Releases bildeten die Grundlage für mehrere laufende Open Source-Entwicklungsprojekte, z. B. FreeBSD, OpenBSD, NetBSD, Darwin und TrueOS.
  • Xenix ist eine nicht mehr verfügbare Version des Unix-Betriebssystems für verschiedene Mikrocomputerplattformen, die von Microsoft lizenziert wurde.
  • AIX ( [~ # ~] a [~ # ~] dvanced [~ # ~] i [~ # ~] nteractive e [~ # ~] x [~ # ~] ecutive) entwickelt und verkauft von IBM für mehrere seiner Computerplattformen.

Linux ist eine Familie von freien und Open-Source-Software-Betriebssystemen, die auf dem Linux-Kernel basieren. Die definierende Komponente von Linux ist der Linux-Kernel, ein Betriebssystem-Kernel, der erstmals am 17. September 1991 von Linus Torvalds veröffentlicht wurde.

Linux ist in einer Form verpackt, die als Linux-Distribution (oder kurz Distribution) für die Verwendung auf dem Desktop und auf dem Server bekannt ist. Einige der beliebtesten und gängigsten Linux-Distributionen sind Arch Linux, CentOS, Debian, Fedora, Gentoo Linux, Linux Mint, Mageia, openSUSE und Ubuntu sowie kommerzielle Distributionen wie Red Hat Enterprise Linux

Die Benutzeroberfläche, auch als Shell bezeichnet, ist entweder eine Befehlszeilenschnittstelle (CLI), eine grafische Benutzeroberfläche (GUI) oder über Steuerelemente, die an die zugehörige Hardware angeschlossen sind, was für eingebettete Systeme üblich ist. Bei Desktop-Systemen ist der Standardmodus normalerweise eine grafische Benutzeroberfläche, obwohl die CLI üblicherweise über Terminalemulatorfenster oder auf einer separaten virtuellen Konsole verfügbar ist.

  • CLI-Shells sind textbasierte Benutzeroberflächen, die Text sowohl für die Eingabe als auch für die Ausgabe verwenden. Die dominante Shell, die unter Linux verwendet wird, ist die Bourne-Again-Shell (bash), die ursprünglich für das Projekt GNU) entwickelt wurde.
  • GUI-Shells sind K Desktop Environment (KDE), GNOME, MATE, Cinnamon, Unity, LXDE, Pantheon und Xfce, obwohl eine Vielzahl zusätzlicher Benutzeroberflächen vorhanden sind . Die meisten gängigen Benutzeroberflächen basieren auf dem X Window System, das oft einfach als "X" bezeichnet wird.

[~ # ~] gnu [~ # ~] ist ein Betriebssystem und eine umfangreiche Sammlung von Computersoftware. GNU besteht vollständig aus freier Software, die größtenteils unter der GNU Projekteigenen GPL lizenziert ist. GNU ist rekursiv) Akronym für "GNU's Not Unix!", gewählt, weil das Design von GNU Unix-ähnlich ist, sich jedoch von Unix dadurch unterscheidet, dass es freie Software ist und keinen Unix-Code enthält. Die Entwicklung des Betriebssystems GNU wurde von initiiert von Richard Stallman arbeitete 1983 am Künstlichen Intelligenzlabor des Massachusetts Institute of Technology (MIT).

Zu den grundlegenden Komponenten gehören die GNU Compiler Collection (GCC)), die GNU C-Bibliothek (glibc) und GNU Core Utilities) (coreutils), aber auch der GNU Debugger (GDB), GNU Binary Utilities (binutils), der GNU Bash) Shell und die GNOME-Desktop-Umgebung.

0
Premraj