Czy system macOS jest UNIX? (i co to znaczy?)

Czy macOS UNIX czy tylko Unix? Czy jest podobny do systemu Unix? Odpowiadamy na niekończącą się debatę i po drodze wyjaśniamy standardy takie jak POSIX i SUS.

macOS: UNIX czy nie?

Ten temat rodzi wiele różnych pytań. Jaki jest rodowód macOS? Ile tego dziedzicznego materiału jest nadal obecne w dzisiejszym macOS i czy to ma znaczenie? Zanim zaczniemy odpowiadać, czy coś jest Uniksem, Uniksem czy Uniksem, musimy dobrze zrozumieć, co te terminy oznaczają. Kto decyduje, czy coś jest Uniksem czy UNIXem i jakich kryteriów używa?

Zacznijmy od początku.

Unix powstał pięćdziesiąt lat temu pod adresem Bell Labs, firma badawczo-rozwojowa należąca do AT&T. Szybko do przodu do roku 1973 i wersji 4 systemu Unix, który został przepisany na język programowania C. Dzięki temu system operacyjny był znacznie bardziej przenośny i łatwiejszy do przenoszenia na różne platformy sprzętowe. W tym samym roku Ken Thompson i Dennis Ritchie, dwóch głównych architektów Uniksa, zaprezentowało referat na konferencji poświęconej systemom operacyjnym. Natychmiast otrzymali prośby o kopie systemu operacyjnego.

Związany przez a dekret zgody datowany na 1956 rok, AT&T musiało wystrzegać się „jakiejkolwiek działalności poza dostarczaniem powszechnych usług łączności z nośnikiem”. Unix nie kwalifikował się jako coś, na czym AT&T może zyskać. Tak więc firma zrobiła coś niezwykłego w tamtym czasie: rozpowszechniła Uniksa jako kod źródłowy na liberalnej licencji. Niewielkie opłaty obejmowały wysyłkę i opakowanie oraz „rozsądną opłatę licencyjną”.

Rozprzestrzenianie się Uniksów

Ponieważ Unix był dostarczany „tak jak jest”, pojawił się bez wsparcia. W rezultacie społeczność uniksowa zaczęła się łączyć, aby pomagać członkom oraz łatać i rozszerzać Uniksa. Możesz więc pobrać kod źródłowy, zmodyfikować go i uzyskać wsparcie od społeczności. Ma znajomy pierścień. Zaczęły pojawiać się różne smaki Uniksa, dostosowywane i dostosowywane do potrzeb organizacji wykonującej pracę.

Bob Fabry, profesor informatyki na Uniwersytecie Kalifornijskim w Berkeley, był członkiem komitetu programowego Sympozjum Zasad Systemów Operacyjnych w 1973 roku. Wysłuchał prezentacji Thompsona i Ritchiego zatytułowanej The UNIX Time-Sharing System.

Fabry zażądał kopii systemu operacyjnego, aw 1974 roku Unix został zainstalowany na PDP / 11 w Computer Sciences Research Group (CSRG) na UC Berkeley. Co ważne, Ken Thompson spędził tam rok, pracując nad tym, co szybko stało się odmianą Uniksa na uniwersytecie. Kopie zmian i dodatków UC Berkeley były rozpowszechniane i stały się znane jako Berkeley Software Distribution (BSD). Ostatecznie stały się one dystrybucjami całego systemu Unix, nadal znanego jako BSD. Numery wersji, takie jak 4.2BSD, identyfikowały różne wydania.

W 1984 roku AT&T została zwolniona z ograniczeń dekretu zgody z 1956 roku i była w stanie prawidłowo sprzedawać swój system operacyjny. Zawierał kod BSD, taki jak TCP / IP, vii powłoka C, csh. Nawet przy takim zapylaniu krzyżowym i współpracy wystąpiły trudności z licencjonowaniem. BSD zawierał kod AT&T, który nie był open source, ale elementy BSD były.

Aby obejść te problemy, opracowano wersję BSD bez kodu AT&T. Kiedy jednak usunięto kod AT&T, brakowało około 20 procent jądra. William Jolitz napisał brakujące fragmenty, a ta wersja Uniksa została wydana jako 386BSD. Projekt 386BSD utknął w martwym punkcie, ale w 1993 roku jego baza kodu źródłowego dała początek NetBSD i FreeBSD projektowanie.

Dzięki temu otrzymaliśmy jeden element układanki: FreeBSD.

Następny krok

Po zwolnieniu z Apple, Inc. w 1985 roku Steve Jobs założył firmę o nazwie NeXT, Inc. Aby zapewnić system operacyjny dla linii produktów stacji roboczych, opracowano NeXT Następny krok. Używał BSD jako podstawy kodu, ale wprowadził zupełnie inne jądro.

NeXT używał zmodyfikowanej wersji Macha mikrojądro i 4.3BSD tworząc NeXTSTEP, która jest drugą częścią tej układanki. Mach został opracowany w Carnegie Mellon w celu ułatwienia badań nad przetwarzaniem rozproszonym i równoległym. Zespół badawczy użył BSD jako systemu operacyjnego i zastąpił jądro zamiast pisać własny system operacyjny.

XNU

W 1996 roku Apple, Inc. kupiło NeXT, Inc. i tym samym przejęło NeXTSTEP. Firma Apple zaczęła opracowywać system operacyjny, który ostatecznie stał się macOS Mac OS X. Zaktualizował jądro Mach i zastąpił je bardziej zaawansowaną wersją opracowaną i używaną przez Open Software Foundation w OSF / 1 system operacyjny. Apple zaktualizował również komponenty BSD zaktualizowanymi i ulepszonymi wersjami z dystrybucji FreeBSD.

Apple przywrócił elementy jądra BSD do jądra Mach. Opracowano również hybrydowe jądro, które łączyło cechy obu monolityczny i architektury mikrojądra.

Plik Zestaw we / wy, który Apple opracował w oparciu o DriverKit NeXTSTEP, został również uwzględniony. Umożliwiło to dodanie sterowników do jądra bez konieczności ich każdorazowej modyfikacji.

XNU to trzecia część układanki.

Standardy POSIX i SUS

W 1996 r. Dwie organizacje normalizacyjneX / Otwórz i Open Software Foundation– połączyły się w formę Grupa otwarta.

The Open Group jest certyfikatem