Ist macOS UNIX? (Und was bedeutet das?)

Ist macOS UNIX oder nur Unix? Oder ist es Unix-ähnlich? Wir beantworten die nicht enden wollende Debatte und erläutern Standards wie POSIX und den SUS ganz nebenbei.

macOS: UNIX oder nicht?

Dieses Thema wirft viele verschiedene Fragen auf. Was ist die Abstammung von macOS? Wie viel von diesem Erbmaterial ist im heutigen macOS noch vorhanden und spielt es eine Rolle? Bevor wir anfangen können zu beantworten, ob etwas UNIX, Unix oder Unix-ähnlich ist, müssen wir uns mit der Bedeutung dieser Begriffe vertraut machen. Wer entscheidet, ob etwas Unix oder UNIX ist und nach welchen Kriterien?

Fangen wir am Anfang an.

Unix wurde vor fünfzig Jahren bei . erstellt Bell Labs, ein Forschungs- und Entwicklungsunternehmen im Besitz von AT&T. Schneller Vorlauf bis 1973 und Version 4 von Unix, die in der Programmiersprache C neu geschrieben wurde. Dadurch wurde das Betriebssystem viel portabler und einfacher auf verschiedene Hardwareplattformen zu übertragen. Das selbe Jahr, Ken Thompson und Dennis Ritchie, zwei der wichtigsten Unix-Architekten, präsentierten auf einer Konferenz einen Vortrag über Betriebssysteme. Sofort erhielten sie Anfragen nach Kopien des Betriebssystems.

Gebunden durch a Zustimmungserlass das auf das Jahr 1956 zurückging, musste AT&T „jedes Geschäft außer der Bereitstellung von Kommunikationsdiensten der gemeinsamen Träger“ meiden. Unix galt nicht als etwas, von dem AT&T profitieren konnte. Also hat die Firma für diese Zeit etwas Bemerkenswertes gemacht: Unix als Quellcode mit einer liberalen Lizenz vertrieben. Kleine Gebühren deckten Versand und Verpackung sowie eine „angemessene Lizenzgebühr“.

  So laden Sie alle iOS- und macOS-Hintergrundbilder aller Zeiten herunter

Eine Verbreitung von Unixen

Da Unix „wie es ist“ bereitgestellt wurde, kam es ohne Unterstützung. Als Ergebnis begann eine Unix-Gemeinschaft zusammenzuwachsen, um Mitgliedern zu helfen und Unix zu patchen und zu erweitern. Sie können also den Quellcode abrufen, ändern und Unterstützung von der Community erhalten. Das hat einen vertrauten Klang. Es erschienen verschiedene Varianten von Unix, die angepasst und optimiert wurden, um sie an die Organisation anzupassen, die die Arbeit verrichtete.

Bob Fabry, ein Informatikprofessor an der UC Berkeley, war Mitglied des Programmkomitees des Symposiums über die Prinzipien von Betriebssystemen 1973. Er hörte sich eine Präsentation von Thompson und Ritchie mit dem Titel The UNIX Time-Sharing System an.

Fabry forderte eine Kopie des Betriebssystems an, und 1974 wurde Unix auf einem PDP/11 an der Computer Sciences Research Group (CSRG) der UC Berkeley. Bezeichnenderweise verbrachte Ken Thompson dort ein Jahr und arbeitete an dem, was schnell zum Unix-Geschmack der Universität wurde. Kopien der Änderungen und Ergänzungen der UC Berkeley wurden verteilt und wurden als Berkeley Software Distribution (BSD) bekannt. Schließlich wurden daraus Distributionen eines ganzen Unix-Systems, das immer noch als BSD bekannt ist. Versionsnummern wie 4.2BSD identifizierten die verschiedenen Releases.

  So aktivieren Sie die universelle Zwischenablage in iOS 10 und macOS Sierra

1984 wurde AT&T von den Beschränkungen des Zustimmungserlasses von 1956 befreit und konnte sein Betriebssystem ordnungsgemäß vermarkten. Es enthielt BSD-Code, wie z TCP/IP, vi, und die C-Shell, csh. Trotz dieser gegenseitigen Bestäubung und Zusammenarbeit gab es Schwierigkeiten bei der Lizenzierung. BSD enthielt AT&T-Code, der nicht Open Source war, aber die BSD-Elemente waren es.

Um diese Probleme zu umgehen, wurde eine Version von BSD ohne AT&T-Code entwickelt. Als der AT&T-Code entfernt wurde, fehlten jedoch etwa 20 Prozent des Kernels. William Jolitz schrieb die fehlenden Teile, und diese Version von Unix wurde veröffentlicht als 386BSD. Das 386BSD-Projekt kam ins Stocken, aber 1993 führte seine Quellcodebasis zu dem NetBSD und FreeBSD Projekte.

Damit haben wir einen Teil des Puzzles: FreeBSD.

Nächster Schritt

Nachdem er 1985 von Apple, Inc. entlassen wurde, gründete Steve Jobs eine Firma namens NeXT, Inc. Um ein Betriebssystem für seine Workstation-Produktlinie bereitzustellen, entwickelte NeXT Nächster Schritt. Es verwendete BSD als Codebasis, führte aber einen völlig anderen Kernel ein.

NeXT verwendet eine modifizierte Version des Mach Mikrokernel und 4.3BSD um NeXTSTEP zu formen, den zweiten Teil dieses Puzzles. Mach wurde bei Carnegie Mellon entwickelt, um die Erforschung von verteiltem und parallelem Computing zu erleichtern. Das Forschungsteam verwendete BSD als Betriebssystem und ersetzte den Kernel, anstatt ein eigenes Betriebssystem zu schreiben.

  So verstecken Sie Dock-Badges im Nicht-Stören-Modus in macOS

XNU

1996 kaufte Apple, Inc. NeXT, Inc. und erwarb dadurch NeXTSTEP. Apple begann mit der Entwicklung des Betriebssystems, aus dem schließlich macOS werden sollte Mac OS X. Es aktualisierte den Mach-Kernel und ersetzte ihn durch die fortschrittlichere Version, die die Open Software Foundation entwickelt und in der verwendet hat OSF/1 Betriebssystem. Apple hat auch die BSD-Komponenten mit aktualisierten und verbesserten Versionen der FreeBSD-Distribution aktualisiert.

Apple brachte Elemente des BSD-Kernels zurück in den Mach-Kernel. Außerdem wurde ein Hybrid-Kernel entwickelt, der die Eigenschaften beider kombiniert monolithisch und Mikrokernel-Architekturen.

Der E/A-Kit, das Apple auf Basis von NeXTSTEPs DriverKit entwickelt hat, war ebenfalls enthalten. Dadurch war es möglich, einem Kernel Treiber hinzuzufügen, ohne ihn jedes Mal ändern zu müssen.

XNU ist der dritte Teil des Puzzles.

Die POSIX- und SUS-Standards

1996 haben zwei Normungsgremien—X/Öffnen und das Open Software Foundation—verschmolzen zu bilden Die offene Gruppe.

Die Open Group ist der Zertifizierer