Ich weiß , dass macOS ein UNIX - Betriebssystem ist , aber ich weiß nicht , ob macOS einen nennen könnte UNIX Verteilung auf die gleiche Weise Gentoo oder Debian sind GNU / Linux - Distributionen .
Ist macOS eine UNIX-Distribution? Wenn dies nicht der Fall ist, wie könnte man sich korrekt auf die Zugehörigkeit von macOS zur UNIX-Betriebssystemfamilie und die Einhaltung der Single UNIX Specification beziehen (dh handelt es sich um eine Unix-Variante , eine Unix-Version , eine Unix- Variante usw.)? Diese Frage gilt auch für Solaris, HP-UX und andere Unices (sind das alle UNIX-Distributionen?).
Darüber hinaus ist das Wort "Distribution" auf GNU-Betriebssysteme (/ Linux, / Hurd, / kFreeBSD, / etc) beschränkt, oder kann es in anderen Fällen verwendet werden?
BEARBEITEN: Ich habe festgestellt, dass die offizielle Website von UNIX "UNIX-Implementierungen" und "UNIX-Betriebssysteme" verwendet, um auf die Familie der Unix-Betriebssysteme zu verweisen, dh diejenigen, die den Single Unix Standard implementieren.
quelle
Antworten:
Was ist überhaupt UNIX?
Kurze Antwort: UNIX ist heutzutage eine Spezifikation / ein Standard.
Zum Zeitpunkt des Schreibens, um die offiziellen Quellen zu zitieren , ist "UNIX® eine eingetragene Marke von The Open Group", dem Unternehmen, das unter anderem die UNIX-Zertifizierung anbietet :
Auf derselben Seite wird speziell angegeben, welche Spezifikation UNIX definiert:
Details zu diesen Spezifikationen finden Sie hier . Seltsamerweise ist UNIX 03 der neueste auf der Website aufgeführte Standard , und um einen anderen zu zitieren Quelle : "UNIX® 03 - das Zeichen für Systeme, die der Version 3 der Single UNIX Specification entsprechen".
So zitieren Sie die Seite "Über uns" mit meinem eigenen Schwerpunkt in Fettdruck:
Dies legt also nahe (oder zumindest meine Interpretation), dass ein Betriebssystem, das dem POSIX-Standard und den Single-UNIX-Spezifikationen entspricht, im Verhalten mit Unix als Betriebssystem kompatibel ist , das zu einem bestimmten Zeitpunkt in der Geschichte existierte. Bitte beachten Sie, dass dies nicht der Fall ist das Vorhandensein von Spuren des ursprünglichen Unix-Quellcodes noch den Kernel in irgendeiner Weise erwähnt (dies wird später wichtig).
Was das von Ritchie und Thompson entwickelte AT & T und System V Unix betrifft, können wir heutzutage sagen, dass es nicht mehr existiert. Basierend auf den oben genannten Quellen scheint UNIX heutzutage kein spezielles Betriebssystem zu sein, sondern ein Standard, der sich aus der bestmöglichen Verallgemeinerung des Verhaltens von Betriebssystemen in der Unix-Familie ableitet .
Wo steht macOS X in der * nix-Welt?
In einer sehr spezifischen Definition entspricht macOS Version 10.13 High Sierra auf Intel-basierter Hardware dem UNIX 03-Standard. Um das PDF-Zertifikat zu zitieren : "Apple Inc. hat einen Markenlizenzvertrag mit X / Open Company Limited geschlossen." Randnotiz: Ich zögere zu hinterfragen, was es bedeutet, wenn MacOS 10.13 auf Hardware anderer Hersteller als Intel behandelt wird, aber wenn man bedenkt, dass Hardware für andere Betriebssysteme erwähnt wird, ist die Hardware von Bedeutung. Beispiel: "Hewlett Packard Enterprise: HP-UX 11i V3 Version B.11.31 oder höher auf HP 9000 Servern mit Präzisionsarchitektur" (von der Registerseite ).
Kehren wir zum vorherigen Abschnitt meiner Antwort zurück. Da diese bestimmte Version des Betriebssystems dem Interoperabilitäts- und Kompatibilitätsstandard entspricht, bedeutet dies, dass das Betriebssystem in Verhalten und Systemimplementierung dem ursprünglichen Unix als Betriebssystem so ähnlich wie möglich ist. Zumindest wird es in Verhalten und Umwelt eng sein. Je näher es der System- und Kernel-Ebene kommt, desto spezifischer und schattierter wird der Bereich, aber zumindest grundlegende Mechanismen und Verhaltensweisen, die in Unix vorhanden waren, sollten in einem Betriebssystem vorhanden sein, das kompatibel sein soll. macOS X sollte diesem Ziel sehr nahe kommen.
Was ist eine Distribution?
So zitieren Sie Wikipedia :
Erinnern wir uns für eine Sekunde daran, dass Linux wie im Linux-Kernel verteilbare Software sein soll, mit Modifikationen oder zumindest in Übereinstimmung mit der GPL v2 . Wenn wir einen Paketmanager und einen Kernel in Betracht ziehen, sind Ubuntu und Red Hat als Distributionen sinnvoll. macOS X hat einen anderen Kernel als das ursprüngliche AT & T Unix - daher macht es keinen Sinn, macOS X als Unix-Distribution zu bezeichnen. Die Leute schlagen vor, dass der macOS X-Kernel auf FreeBSD basiert, aber um FreeBSD-Wiki zu zitieren :
Einige Leute nennen fälschlicherweise den OS X-Kernel Darwin. So zitieren Sie den Apple Kernel Programming Guide :
Und um dieselbe Seite zu zitieren:
Basierend auf allem, was oben erwähnt wurde, kann man mit Sicherheit sagen, dass OS X keine Distribution ist im Sinne einer Linux-Distribution. In ähnlicher Weise sind andere erwähnte Betriebssysteme POSIX-kompatibel und sind zertifizierte Unix-Systeme, sie unterscheiden sich jedoch wiederum in Kernel und Variationen der zugrunde liegenden Systemaufrufe (weshalb es Bücher zur Solaris-Systemprogrammierung gibt, die für sich genommen ein würdiges Thema sind). Daher sind sie keine Distributionen im Sinne von Linux-Distributionen - ein gemeinsamer Kern mit Variationen bei Dienstprogrammen. Unter Linux werden Bücher zur Linux-Systemprogrammierung oder zur Linux-Kernel-Programmierung angezeigt, nicht zur verteilungsspezifischen Systemprogrammierung, da eine bestimmte Distribution keine systemspezifischen Merkmale aufweist.
Die Bestätigung dessen, was wir hier sehen, finden Sie in der offiziellen Dokumentation. Zum Beispiel heißt es in einem Artikel über developerWorks von IBM, in dem der Unterschied zwischen UNIX-Betriebssystemtypen und Linux-Distributionen behandelt wurde (Hervorhebung hinzugefügt):
Mit anderen Worten, sie basieren auf derselben Grundlage, haben jedoch nicht dieselbe Grundlage, da Linux-Distributionen den Kernel gemeinsam nutzen.
Überlegungen
Beachten Sie, dass das Wort Verteilung scheint vor allem verwendet werden , wenn Betriebssysteme verweisen , die den Linux - Kernel in seinem Kern haben. Nehmen wir zum Beispiel den BSD-Typ von Betriebssystemen: Es gibt GhostBSD , das auf dem Kernel basiert und einige der Dienstprogramme von FreeBSD verwendet , aber ich habe noch nie gesehen, dass es als BSD-Distribution bezeichnet wird. Jedes BSD-Betriebssystem erwähnt nur, worauf es basiert, und normalerweise wird ein Betriebssystem als eigenständiges Betriebssystem erwähnt. Sicher, BSD steht für Berkeley Software Distribution, aber ... das war's.
Um diese Antwort auf unserer Website als Antwort auf die Frage zu zitieren , ob verschiedene BSD-Versionen dieselben Kernel verwenden:
Sie sind keine Distributionen im Sinne von Linux-Distributionen. Beachten Sie den Copyright-Hinweis in diesem Dokument :
Anmerkungen
Abschließend:
quelle
as close to original Unix as possible
POSIX-kompatibel ist.Bildquelle: https://developer.apple.com/library/content/documentation/MacOSX/Conceptual/OSX_Technology_Overview/SystemTechnology/SystemTechnology.html
HP-UX Proprietäre Implementierung des Unix-Betriebssystems auf der Basis von UNIX System V
Solaris Unix SVR4
quelle