Είναι το macOS UNIX; (και τι σημαίνει αυτό;)

Είναι το macOS UNIX ή απλώς Unix; Ή είναι σαν Unix; Απαντάμε στην ατελείωτη συζήτηση και εξηγούμε πρότυπα όπως το POSIX και το SUS στην πορεία.

macOS: UNIX ή όχι;

Αυτό το θέμα εγείρει ένα σωρό διαφορετικά ερωτήματα. Ποια είναι η γενεαλογία του macOS; Πόσο από αυτό το κληρονομικό υλικό εξακολουθεί να υπάρχει στο σημερινό macOS και έχει σημασία; Προτού μπορέσουμε να αρχίσουμε να απαντάμε αν κάτι είναι UNIX, Unix ή Unix, πρέπει να είμαστε άνετα με το τι σημαίνουν αυτοί οι όροι. Ποιος μπορεί να αποφασίσει αν κάτι είναι Unix ή UNIX και ποια κριτήρια χρησιμοποιούν;

Ας ξεκινήσουμε από την αρχή.

Το Unix δημιουργήθηκε πριν από πενήντα χρόνια στο Bell Labs, μια εταιρεία έρευνας και ανάπτυξης που ανήκει στην AT&T. Γρήγορη μετάβαση στο 1973 και την έκδοση 4 του Unix, η οποία γράφτηκε ξανά στη γλώσσα προγραμματισμού C. Αυτό έκανε το λειτουργικό σύστημα πολύ πιο φορητό και ευκολότερο στη μεταφορά σε διαφορετικές πλατφόρμες υλικού. Την ίδια χρονιά, Κεν Τόμσον και Ντένις Ρίτσι, δύο από τους βασικούς αρχιτέκτονες του Unix, παρουσίασαν μια εργασία σε ένα συνέδριο σχετικά με τα λειτουργικά συστήματα. Αμέσως έλαβαν αιτήματα για αντίγραφα του λειτουργικού συστήματος.

Δεσμευμένο από α διάταγμα συναίνεσης που χρονολογούνταν από το 1956, η AT&T έπρεπε να αποφύγει «οποιαδήποτε άλλη επιχείρηση εκτός από την παροχή υπηρεσιών επικοινωνίας κοινού φορέα». Το Unix δεν πληροί τις προϋποθέσεις ως κάτι από το οποίο η AT&T θα μπορούσε να επωφεληθεί. Έτσι, η εταιρεία έκανε κάτι αξιοσημείωτο για εκείνη την εποχή: διένειμε το Unix ως πηγαίο κώδικα με μια φιλελεύθερη άδεια. Μικρές χρεώσεις κάλυψαν τη ναυτιλία και τη συσκευασία και ένα “εύλογο δικαίωμα”.

  Ξεχάστε την ώρα της οθόνης! Παρακολουθήστε τη χρήση της εφαρμογής σας στο macOS Catalina με αυτές τις εναλλακτικές λύσεις

Ένας πολλαπλασιασμός των Unixes

Επειδή το Unix παρασχέθηκε “ως έχει”, ήρθε χωρίς υποστήριξη. Ως αποτέλεσμα, μια κοινότητα Unix άρχισε να συγχωνεύεται για να βοηθήσει τα μέλη, και να ενημερώσει και να επεκτείνει το Unix. Έτσι, θα μπορούσατε να λάβετε τον πηγαίο κώδικα, να τον τροποποιήσετε και να λάβετε υποστήριξη από την κοινότητα. Αυτό έχει ένα γνωστό δαχτυλίδι σε αυτό. Διαφορετικές γεύσεις του Unix άρχισαν να εμφανίζονται, προσαρμόστηκαν και τροποποιήθηκαν για να ταιριάζουν στον οργανισμό που έκανε τη δουλειά.

Μπομπ Φάμπρι, καθηγητής επιστήμης υπολογιστών στο UC Berkeley, ήταν στην επιτροπή προγράμματος για το 1973 Symposium on Operating Systems Principles. Άκουσε μια παρουσίαση των Thompson και Ritchie, με τίτλο The UNIX Time-Sharing System.

Ο Fabry ζήτησε ένα αντίγραφο του λειτουργικού συστήματος και, το 1974, το Unix εγκαταστάθηκε σε PDP/11 στο Computer Sciences Research Group (CSRG) στο UC Berkeley. Είναι σημαντικό ότι ο Ken Thompson πέρασε ένα χρόνο εκεί, δουλεύοντας πάνω σε αυτό που γρήγορα έγινε η γεύση του Unix του ίδιου του πανεπιστημίου. Αντίγραφα των αλλαγών και προσθηκών του UC Berkeley διανεμήθηκαν και έγιναν γνωστά ως Berkeley Software Distribution (BSD). Τελικά, αυτές έγιναν διανομές ενός ολόκληρου συστήματος Unix, γνωστό ακόμα ως BSD. Οι αριθμοί εκδόσεων, όπως η 4.2BSD, προσδιόρισαν τις διαφορετικές εκδόσεις.

  Γιατί πρέπει να καθυστερήσετε τις αναβαθμίσεις του macOS σας

Το 1984, η AT&T απαλλάχθηκε από τους περιορισμούς του διατάγματος συναίνεσης του 1956 και μπόρεσε να εμπορευτεί σωστά το λειτουργικό της σύστημα. Περιλάμβανε κωδικό BSD, όπως π.χ TCP/IP, viκαι το κέλυφος C, csh. Ακόμη και με αυτή τη διασταυρούμενη επικονίαση και τη συνεργασία, υπήρχαν δυσκολίες με την αδειοδότηση. Το BSD περιείχε κώδικα AT&T, ο οποίος δεν ήταν ανοιχτού κώδικα, αλλά τα στοιχεία BSD ήταν.

Μια έκδοση του BSD χωρίς κώδικα AT&T αναπτύχθηκε για την αντιμετώπιση αυτών των προβλημάτων. Ωστόσο, όταν αφαιρέθηκε ο κώδικας AT&T, περίπου το 20 τοις εκατό του πυρήνα έλειπε. Ουίλιαμ Τζόλιτζ έγραψε τα τμήματα που λείπουν και αυτή η έκδοση του Unix κυκλοφόρησε ως 386BSD. Το έργο 386BSD σταμάτησε, αλλά το 1993, η βάση του πηγαίου κώδικα οδήγησε στη δημιουργία NetBSD και FreeBSD έργα.

Αυτό μας έδωσε ένα κομμάτι από το παζλ: FreeBSD.

Επόμενο βήμα

Μετά την απόλυσή του από την Apple, Inc. το 1985, ο Steve Jobs ίδρυσε μια εταιρεία που ονομάζεται NeXT, Inc. Για να παρέχει ένα λειτουργικό σύστημα για τη σειρά προϊόντων του σταθμού εργασίας της, η NeXT ανέπτυξε Επόμενο βήμα. Χρησιμοποιούσε το BSD ως βάση κώδικα αλλά εισήγαγε έναν εντελώς διαφορετικό πυρήνα.

  Πώς να ανοίξετε πρόσφατα εφαρμογές τερματισμού στο macOS

Το NeXT χρησιμοποίησε μια τροποποιημένη έκδοση του Mach μικροπυρήνα και 4.3BSD για να σχηματίσετε το NeXTSTEP, το οποίο είναι το δεύτερο μέρος αυτού του παζλ. Mach αναπτύχθηκε στο Carnegie Mellon για να διευκολύνει την έρευνα σε κατανεμημένους και παράλληλους υπολογιστές. Η ερευνητική ομάδα χρησιμοποίησε το BSD ως λειτουργικό σύστημα και αντικατέστησε τον πυρήνα αντί να γράψει το δικό της λειτουργικό σύστημα.

XNU

Το 1996, η Apple, Inc. αγόρασε τη NeXT, Inc. και, ως εκ τούτου, εξαγόρασε τη NeXTSTEP. Η Apple άρχισε να αναπτύσσει το λειτουργικό σύστημα που τελικά θα γινόταν macOS Mac OS X. Αναβάθμισε τον πυρήνα Mach και τον αντικατέστησε με την πιο προηγμένη έκδοση που ανέπτυξε και χρησιμοποιούσε το Open Software Foundation στο OSF/1 λειτουργικό σύστημα. Η Apple αναβάθμισε επίσης τα στοιχεία BSD με ενημερωμένες και βελτιωμένες εκδόσεις από τη διανομή FreeBSD.

Η Apple επανέφερε στοιχεία του πυρήνα BSD στον πυρήνα Mach. Ανέπτυξε επίσης έναν υβριδικό πυρήνα που συνδύαζε χαρακτηριστικά και των δύο μονολιθικός και αρχιτεκτονικές μικροπυρήνων.

ο Κιτ I/O, το οποίο η Apple ανέπτυξε με βάση το DriverKit του NeXTSTEP, συμπεριλήφθηκε επίσης. Αυτό κατέστησε δυνατή την προσθήκη προγραμμάτων οδήγησης σε έναν πυρήνα χωρίς να χρειάζεται να τον τροποποιείτε κάθε φορά.

Το XNU είναι το τρίτο μέρος του παζλ.

Τα πρότυπα POSIX και SUS

Το 1996, δύο φορείς τυποποίησης—X/Open και το Open Software Foundation— συγχωνεύτηκαν για να σχηματίσουν Η Ανοιχτή Ομάδα.

Το Open Group είναι το πιστοποιητικό