====== La naissance de BSD, l'Unix de l'Université de Californie à Berkeley et son ascension ======
**Logo** de **BSD UNIX** du **CSRG** : {{ :wiki:histoire_informatique:240px-bsd4_3.gif?250 |}}
===== Résumé Chronologique des BSD UNIX de Berkeley =====
==== Arrivé de l'Unix des Bell Labs à l'UCB ====
À demande du professeur d'informatique **Bob Fabry**, l’**Université de Californie à Berkeley** (**//UCB//**) à acheter un **PDP-11/45** de l'entreprise **DEC** (**//Digital Equipment Corporation//**) et à acquis pour une somme modique une ''licence'' **Unix** (**Unix version 5**) en 1974.
Grâce à l'argent du projet de **base de données Ingres**, un ans plus tard, l'**UCB** a été acheté un **PDP-11/70** de plus grande taille.
En 1975, **Ken Thompson** a pris un congé sabbatique des **Bell Labs** et est venu à **Berkeley** en tant que ''professeur'' invité. Il a aidé à installer **Unix version 6** et a commencé à travailler sur une implémentation du **langage de programmation Pascal** pour le **système**. Les étudiants diplômés **Chuck Haley** et **Bill Joy** ont amélioré le **Pascal** de **Thompson** et ''implémenté'' un éditeur de texte amélioré, **ex**. D'autres ''universités'' ont eu un vif ''intérêt'' pour les **logiciels de Berkeley**.
==== 1BSD ====
**Bill Joy** a commencé à ''compiler'' la première **distribution BSD** (**//Berkeley Software Distribution//**) appelée **1BSD**, qui fut publiée le 9 mars 1978. **1BSD** n'était pas une **distribution Unix complète** mais simplement un **ensemble de logiciels** pour **Unix version 6** contenant un **compilateur de Pascal** amélioré et un **éditeur de texte** nommé **ex** (l'ancêtre de **vi**).
==== 2BSD ====
La **distribution 2BSD** a été publiée en mai 1979, elle comprenait des mises à jour des **logiciels de 1BSD** en particulier une amélioration du **compilateur de Pascal** et de nouveaux **logiciels**, en autres deux **logiciels** ''développés'' par **Joy**, l'**éditeur de texte** **vi** (une version ''visuelle'' de **ex**) et le **C shell** (**shell unix** utilisant une **syntaxe** plus proche du **langage C** et bénéficiant d'un **historique de commandes**), puis la **bibliothèque** et **base de données** **Termcap** (**//terminal capability//**). **2.xBSD** est la branche spécifique au **mini-ordinateur DEC PDP-11**, elle se termina par la version **2.11BSD** qui reçoit encore à l'heure actuelle des **correctifs** de ''sécurité''. Le dernier **correctif de sécurité** (**482**) est paru le 27 septembre 2024.
==== 3BSD ====
En 1978, un **ordinateur DEC VAX** a été installé à **Berkeley** mais le seul **Unix** disponible pour cette ''architecture'' était **UNIX/32V** des **Bell Labs** qui ne supportait pas les ''fonctionnalités'' de **mémoire virtuelle** offerte par le **VAX**, c'est une des raisons pour laquelle l'**UCB** à développé **3BSD** en fin d'année 1979 et crée un ''nouveau'' **noyau** basé sur celui de **32V**, ''réécrit'' en grande partie par **Özalp Babaoğlu** (étudiant ''diplômé'' de **Berkeley**) qui inclue une ''implémentation'' de **mémoire virtuelle**, les utilitaires de **2BSD portés** sur le **VAX** et les **utilitaires standards** de **32V**. **3BSD** est la première version de **BSD** à être un **système d'exploitation complet** et non plus quelques **logiciels** pour agrémenter une version d'**Unix**. **3BSD** était également appelé **Virtual VAX/UNIX** ou **VMUNIX** (pour **//Virtual Memory Unix//**) et les ''images'' du **noyau BSD** ont été appelées ''/vmunix'' au lieu de ''/unix'' sur l'**Unix** des **Bell Labs**, se nom donné au **noyau** à ''perdurer'' jusqu'à la dernière version de **BSD** (**4.4BSD**).
==== 2.79BSD ====
En parallèle **2.79BSD** basé sur **Unix verion 7** et avec des ''utilitaires'' de **3BSD** est sorti en avril 1980. C'était une **distribution de logiciels** spécifique au **PDP-11**.
==== 4BSD ====
En 1979, la **DARPA** (**//Defense Advanced Research Projects Agency//**) souhaitait ''unifier'' les **systèmes d'exploitation** utilisés par les **centres américains** de **recherche en informatique** connectés au **DARPAnet**. C'est à ce moment que **Berkeley** proposa à la **DARPA** de ''développer'' une version améliorée de **3BSD** pour résoudre se problème. En conséquence, **4BSD** fut crée en novembre 1980, comprenant les **utilitaires** de **3BSD** et supportait les **VAX** les plus récents, un nouveau **système de courrier électronique** (**Delivermail**), un **interpréteur de LISP**, le **contrôle des tâches du C shell** (**csh**), les **signaux fiables** et la **bibliothèque de programmation Curses**. La plupart des ''organisations'' achetaient une ''licence'' **32V** pour pouvoir commander **4BSD** sans même se soucier d'obtenir une ''bande'' **32V**. C'est également après l'accord passé avec la **DARPA** que le ''professeur'' **Bob Fabry** créa le **Computer Systems Research Group** (**//CSRG//**).
==== 4.1BSD ====
**4BSD** est une version qui a été jugée trop ''lente'' par rapport à l'**OS VMS** (**//Virtual Memory System//**) de **DEC** et qui de se fait a été rapidement remplacée par **4.1BSD** paru en juin 1981, pour répondre au critique de **4BSD**. Le **noyau de 4.1BSD** a été systématiquement mis au point par **Bill Joy** jusqu'à ce qu'il puisse fonctionner aussi bien que **VMS** sur plusieurs **benchmarks**. À la base **4.1BSD** devait s'appeler **5BSD** mais suite aux objections de **AT&T** le nom a été modifié pour **4.1BSD** pour éviter toutes confusions avec l'**UNIX System V** de **AT&T**.
==== 2.8BSD ====
Coté **PDP-11**, **2.8BSD** paru en juillet 1981, toujours basé sur la **V7** avec des ''apports'' de **4.1BSD**.
==== Entre 4.1BSD et 4.2BSD ====
Entre **4.1BSD** et **4.2BSD** il y eu trois versions ''bêta'' intermédiaires: **4.1aBSD**, qui incorporait une version modifiée de l'''implémentation'' préliminaire de **TCP/IP** de **BBN** (**//Bolt, Beranek and Newman//**); puis **4.1bBSD** en juin 1982, qui incluait un nouveau **système de Fichiers** du nom de **Berkeley Fast File System**, ''implémenté'' par **Marshall Kirk McKusick**; et **4.1cBSD** en avril 1983 était une version intermédiaire au cours des derniers mois du ''développement'' de **4.2BSD**. À noter que **4.1cBSD** a été le **système de base** de **Unix version 8** des **Bell Labs**.
==== 2.9BSD ====
En 1983, avant la sorti de **4.2BSD** paru **2.9BSD** qui était un **portage logiciel** indirect de **4.1BSD**, le **noyau** utilise une série complexe d'**overlays** pour s'adapter au **PDP-11**. Contrairement aux versions précédentes de **BSD** pour le **PDP-11**, cest la première version de la ''branche'' **2.xBSD** à être un **système d'exploitation complet** qui ne repose pas sur une installation préalable de la **V6** ou **V7** des **Bell Labs**.
==== 4.2BSD ====
**Logo** de **4.2BSD** : {{ :wiki:histoire_informatique:telechargement_2_.jpeg?180 |}}
Pour guider la ''conception'' de **4.2BSD**, **Duane Adams** de **DARPA** a crée un ''comité'' composé de **Bob Fabry**, **Bill Joy** et **Sam Leffler** de l'**UCB**, **Alan Nemeth** et **Rob Gurwitz** de **BBN**, **Dennis Ritchie** de **Bell Labs**, **Keith Lantz** de **Stanford**, **Rick Rashid** de **Carnegie Mellon**, **Bert Halstead** du **MIT**, **Dan Lynch** de l'**ISI** et **Gerald J. Popek** de l'**UCLA**. Ce ''comité'' s'est réuni d'avril 1981 à juin 1983. À noter que **Bill Joy** à quitter le **CSRG** de l'**UCB** pour rejoindre l' ''entreprise'' **Sun Microsystems**.
C'est en août 1983 que la version officielle de **4.2BSD** vu le jour, elle incluait la **pile TCP/IP** de **Berkeley** conçu par **Bill Joy** et non pas celle de **BBN**, le nouveau **système de fichiers Berkeley Fast File System** (**FFS**); et incluait également plusieurs ''fonctionnalités'' de ''contributeurs'' externes, notamment les **quotas de disque** et le **contrôle des tâches**. Cette version de **BSD** intégrait tellement d' ''améliorations'', de nouvelles ''fonctionnalités'',qu'elle devint extrêmement ''populaire'', de sorte que beaucoup d' ''utilisateurs'' de **UNIX System V** ''migrèrent'' vers **4.2BSD**, surtout pour la **pile TCP/IP** qui n'existait pas chez l'**Unix d'AT&T** dans l'attente que celle-ci y soit ''intégrée''. Les **commandes Unix** en rapport à la nouvelle **pile TCP/IP** de **Berkeley**, incluait en autres, **ifconfig** pour la gestion des **cartes réseaux**, **route** pour voir et modifier la **table de routage**, **netstat** qui permet de lister les **ports** de différent **protocole réseau**, **client** et **serveur** **FTP** (**commande** **ftpd** et **ftpd**), **client** et **serveur** **TFTP** (**commande** **tftp** et **tftpd**), **client** et **serveur** **Telnet** (**commande** **telnet** et **telnetd**), **client** et **serveur** **Rlogin** (**commande** **rlogin** et **rlogind**), **client** et **serveur** **RSH** (**commande** **rsh** et **rshd**), **client** **Mail** (**commande** **mail**) et tous les **services** en rapport à la **pile TCP/IP** hormis **inetd** qui a été seulement intégré à partir de **4.3BSD**.
**4.2BSD** est la première version de **BSD UNIX** a intégré tous les **composants** nécessaires pour gérer une **pile TCP/IP** ! **4.2BSD** est le tout premier **système d'exploitation** à avoir une **pile TCP/IP** ''complète'' et ''opérationnelle'' (tous **OS** confondus et pas seulement les **système UNIX**) ! En gros tous les **OS** de nos jours ont une **pile TCP/IP** qui c'est originellement basée sur celle de **BSD** du **CSRG**, c'est pour ainsi dire les fondements de l'**Internet** tel q'on le connaît à l'heure actuelle !
==== 4.3BSD ====
**4.3BSD** a été publié en juin 1986, qui incluait une **pile TCP/IP** beaucoup plus ''mature'', le **système de fichiers FFS** fut encore amélioré, et de nombreux **correctifs de performances** ont été intégrés. **4.3BSD** est cité comme le ''meilleur'' **logiciel** jamais ''écrit'' et pour cause sa **pile TCP/IP** a été reprise par tous les **Unix** basé sur **System V**, les descendants de **BSD**, **GNU/Linux**, **Microsoft Windows**, et bien d'autres... L'**internet** tel qu'on le connait actuellement repose à l'origine sur le **protocole** et la **pile TCP/IP** de **4.3BSD**.
==== 2.10BSD ====
En avril 1987 paru **2.10BSD**, version élaborée par un un ''consortium'' du **CSRG** et de l' ''association'' **USENIX** qui était basé sur **4.3BSD** adapté pour tous les ''modèles'' de **PDP-11** avec une ''gestion'' de la **mémoire**. **2.10BSD** implémentait les **appels système BSD**, **inode**, **mémoire principale** et **mise en cache d'échange**, la prise en charge de **QBUS 22 bits**, **disque RAM**, **pilote de périphérique MSCP** ( **UDA50**, **KLESI**, etc.), l'**espace utilisateur** de **4.3BSD** (**bibliothèques** et **applications**). La seule ombre au tableau est que **2.10BSD** ne supportait pas encore la **mise en réseau**.
==== 4.3BSD-Tahoe ====
**4.3BSD-Tahoe** fut publié en juin 1988, c'est une version par rapport à **4.3BSD** qui mettait l'accent sur la ''portabilité'' de son **code source**, ce qui conduit à une ''séparation'' du **code** ''dépendant de la machine'' et ''indépendant de la machine'' dans **BSD**, qui améliorait considérablement la ''portabilité'' du **système**. Ce qui a poussé le **CSRG** à creer **4.3BSD-Tahoe** est le fait que **BSD** voulait s'éloigner de la ''plateforme'' vieillissante **VAX** et utiliser à la place la ''plateforme'' **Power 6/32** (nom de code **« Tahoe »**) ''développée'' par **Computer Consoles Inc**. qui semblait prometteuse à l'époque, mais a été malheureusement abandonnée par ses **développeurs** peu de temps après. Mais au final le ''portage'' de **4.3BSD-Tahoe** a été très utile pour les versions ultérieures de **BSD**.
==== Networking Release 1 ====
Jusque-là, toutes les versions de **BSD** avaient du **code propriétaire AT&T Unix** en son sein et étaient donc soumises à une ''licence'' **logicielle AT&T**. Les **licences AT&T** étaient devenus très ''coûteuses'' et plusieurs parties extérieures à l'**UCB** avaient exprimé un vif intérêt pour une version distincte du **code réseau** qui avait été exclusivement ''développée'' par le **CSRG** et ne contenait donc aucun **code** provenant de **AT&T**. Ce qui a motivé le **CSRG** à publier **Networking Release 1** (**4.3BSD Net/1**) en juin 1989, qui a été mise à la disposition des ''non-titulaires'' de ''licence'' du **code AT&T** et était ''librement redistribuable'' selon les ''termes'' de la **licence BSD**. **Net/1** était la première **distribution BSD** totalement ''libre'' au niveau du **code source**.
==== 4.3BSD-Reno ====
**4.3BSD-Reno** est sorti en juin 1990, c'était une version ''intermédiaire'' (déconseillée en ''production'') au cours des premiers ''développements'' de **4.4BSD**. Le nom **Reno** fait référence au centre de jeu de **Reno** du **Nevada**. **4.3BSD-Reno** s'est explicitement orientée vers la ''conformité'' **POSIX**, parmi les nouvelles ''fonctionnalités'' figuraient une ''implémentation'' **NFS** (**//Network File System//**) de l'**Université de Guelph**, une touche d'état (**"Ctrl-T"**) et la ''prise en charge'' de la ''gamme'' d'**ordinateurs HP9000**, provenant du ''port'' **HPBSD** de l'**Université de l'Utah**.
==== Networking Release 2 ====
**Networking Release 2** (**4.3BSD Net/2**) a été publié en juin 1991, c'est le ''développeur'' **Keith Bostic** qui a proposé que davantage de **code** non **AT&T** du **système BSD** soit publié sous la même ''licence'' que **Net/1**, la **license BSD**. À cette fin tous les **utilitaires standards** d'**Unix** ont été ''réimplémentés'' (réécrit) en ''dix-huit mois'' sous **licence BSD**. Par exemple l'**éditeur de texte vi** qui était basé sur la version **Unix originale** de **ed**, a été ''réécrit'' en **nvi** (**//new vi//**). **nvi** est encore l'**éditeur de texte** par défaut de tous les ''descendants actuels'' de **BSD Unix**. Il a été déterminé qu'il y avait seulement ''six fichiers'' liés au **noyau AT&T** manquants, de se fait **Net/2** était un **système d'exploitation** ''presque complet'', ''librement distribuable'' étant sous **licence BSD**.
==== 2.11BSD ====
La dernière version pour **PDP-11** est **2.11BSD** et a été publié en février 1992, cette version ne fonctionne que sur les **PDP-11** avec le **mode Superviseur**. **2.11BSD** à la même base que **2.10BSD** avec toutefois quelques **mises à niveau**. Par rapport à **2.10BSD**, **2.11BSD** apporte une prise en charge ''complète'' de la **mise en réseau** provenant de **4.3BSD** en **mode Superviseur**, une prise en charge des **noms de fichiers longs** et les **applications** venant de **4.3BSD** qui étaient manquantes dans **2.10BSD**. **2.11BSD** continue de recevoir des **correctifs de sécurité**, le dernier **correctif** n° ''481'' a été publié le 28 avril 2023.
Tous les **BSD UNIX** de **Berkeley** sont ''émulables'' avec l'**émulateur/simlateur** [[wiki:virtualisation_et_emulation:simh|SimH]] de **Bob Supnik** qui se trouve [[https://simh.trailing-edge.com/|ici]], vous avez même la possibilité de ''connecter'' **4.2BSD**, **4.3BSD**, **4.3BSD-Tahoe** (via **4.3BSD Quasijarus**) et **4.3BSD-Reno** pour le **VAX** et **2.11BSD** pour le **PDP-11** à **Internet** en choisissant une version spécifique de **SimH** pour la **mise en réseau**. Il existe également une version de **SimH** nommé **Open-SimH** avec encore plus d'**ordinateurs** ''old school'', par contre, il faut **compiler** l'**émulateur**.
===== BSD Unix hors de l'UCB pour le Processeur Intel 80386 =====
==== 386BSD ====
À partir de **Net/2**, le couple **Lynne et William Jolitz** tous deux d'''anciens élèves'' de **Berkeley** ont crées **386BSD** basé sur **4.3BSD Net/2** spécifique à l'**architecture** **Intel 80386** en créant en autres les ''six fichiers'' manquants au **noyau BSD** de **4.3BSD Net/2**, **386BSD** est sorti le 17 mars 1992. Plusieurs versions de **386BSD** se sont succédées. **386BSD** ne ''fonctionnait'' pas comme certains ''utilisateurs'' de se **système** le voulait, c'est pourquoi ils ont proposés des ''correctifs'' et des ''améliorations'' sous forme de **patchkit** mais le **couple Jolitz** n'était pas enclin à les appliquer à leur **système**, c'est pourquoi deux ''organisations'' externes se sont ''créées'' pour créer leur propre **système d'exploitation** tous deux basés à la base sur **386BSD**. **NetBSD** a vu le jour en avril 1993 et **FreeBSD** en novembre 1993.
==== BSD/386 ====
En parallèle de **386BSD** est né **BSD/386** en avril 1992 (renommé plus tard **BSD/OS**) de l' ''entreprise'' **Berkeley Software Design, Inc** (**//BSDi//**), c'était à la base un **OS** prévu pour fonctionner sur **Intel 80386** (comme **386BSD**). Derrière cette ''entreprise'' il y avait des ''membres'' très ''influents'' du **CSRG** et **William Jolitz** mais se dernier à vite déchanté quand il c'est rendu compte que le seul but de **BSDi** était de ''vendre'' son **système d'exploitation**, **système propriétaire** qui plus est. **BSDi** vendait son **OS BSD/386** au prix de ''995 $ US'' avec le **code source** soit beaucoup moins cher qu'une ''licence'' d'**UNIX System V** de **AT&T**.
===== Le Procès contre BSDi et l'UCB =====
En avril 1992, l'**entreprise BSDi** et Les **régents de l'Université de Californie** se sont rapidement retrouvé en ''procès juridique'' face à **Unix System Laboratories** (**//USL//**) pour la ''propriété intellectuelle'' liée au **système d'exploitation Unix** ce qui a provoqué une injonction sur la **distribution de Net/2** jusqu'à ce que la validité des revendications de ''droits d'auteur'' d'**USL** sur le **code source** puisse être déterminée. Le ''procès'' dura ''deux ans'' ce qui freina considérablement le ''développement'' des **logiciels libres** descendants de **BSD**, affaire qui propulsa **GNU/Linux** qui était exempt de tous **code source AT&T**, les ''utilisateurs'' des **systèmes BSD libres** se sont tourné vers **GNU/Linux**, craignant d'avoir des ennuis à cause du ''procès''. **GNU/Linux** prit un ''avantage'' qu'il a conservé depuis.
En juillet 1993, **Novell** acheta **USL** de **AT&T** ce qui conduit à un ''règlement à l'amiable'' en 1994 avec **BSDi** et les **régents de l'Université de Californie**. Au final, sur les ''18 000 fichiers'' de la **distribution Net/2**, ''seuls trois'' ont dû être supprimés et ''70 modifiés'' pour afficher les mentions de **droits d'auteur de l'USL**. Une autre condition du règlement était que l'**USL** n'intenterait pas de nouvelles ''poursuites'' contre les ''utilisateurs'' et les distributeurs de la prochaine version **4.4BSD-Lite**.
Il faut préciser que se ''procès'', n'empêcha pas le **CSRG** de continuer le ''développement'' de **4.4BSD**.
===== Derniers BSD Unix de l'UCB dépourvus de tout Code Source de AT&T ====
==== 4.4BSD-Alpha puis 4.4BSD et 4.4BSD-Encumbered ====
En août 1992, **4.4BSD-Alpha** est sorti, puis le 1 juin 1993 c'est au tour de **4.4BSD** et **4.4BSD-Encumbered** de voir le jour. **4.4BSD-Encumbered** a été publié uniquement pour les ''titulaires'' de **licence USL** car elle contenait du **code source** de **AT&T**.
==== 4.4BSD-Lite Release 1 ====
**4.4BSD-Lite Release 1** a été publié le 1er mars 1994, cette version était ''dépourvu'' de **code AT&T**, ne nécessitant donc plus de **licence source USL** et elle contenait de nombreux autres changements par rapport à la version originale **4.4BSD-Encumbered**. C'est la première version totalement ''libre'' (**open source**) uniquement sous **licence BSD**.
==== 4.4BSD-Lite Release 2 ====
**4.4BSD-Lite Release 2** a été publié en juin 1995, c'est la dernière version ''développée'' par le **CSRG**, après quoi le **CSRG** à été ''dissous'' et le ''développement'' de **BSD** à **Berkeley** a cessé. Dès lors plusieurs ''variantes'' basées directement ou indirectement sur **4.4BSD-Lite** sont encore ''maintenues'', parmi les **systèmes** les plus courant on peut citer: **FreeBSD**, **NetBSD**, **OpenBSD** et **DragonFly BSD**.
===== Anicens OS basé sur BSD UNIX hors UCB =====
Quelques ''anciens'' **systèmes Unix** étant basés sur **BSD** (les plus ''populaires''): **SunOS** de **Sun**, **Dynix** de **Sequent**, **NeXTSTEP** (l'ancêtre de **macOS**) de **NeXT**, **Ultrix** de **DEC** et pour finir **BSD/386** devenu **BSD/OS** (avec comme nouvelle base **4.4BSD-Lite**) de **BSDi** puis de **Wind River** après le rachat de **BSDi**. Il ya eu également une ''entreprise'' produisant des **BSD UNIX** ''commercials'' du nom de **mt Xinu, Inc**.
===== Résumé des BSD Libres Actuels basé sur 4.4BSD =====
Parmi les **systèmes d'exploitation BSD libres** (**open source**) en plein ''développement'', les ''principaux'' système sont:
* [[wiki:systemes_d_exploitation:bsd_unix:freebsd|FreeBSD]] lancé en 1993 (quelques mois après **NetBSD**) était au départ basé sur **386BSD** mais à partir de **FreeBSD 2.0** le **code de 386BSD** a été remplacé par **4.4BSD-Lite** puis **FreeBSD 3.0** a prit comme base **4.4BSD-Lite 2**.
* [[wiki:systemes_d_exploitation:bsd_unix:netbsd|NetBSD]], premier ''dérivé'' de **BSD** lancé en 1993, était basé à l'origine sur **386BSD 0.1** et **4.3BSD Net/2**. À partir de **NetBSD 1.0** la base de **code Net/2** a été remplacé par **4.4BSD-Lite**, puis à la sortie de **NetBSD 1.4** le **système** à totalement ''migré'' vers la base de **code 4.4BSD-Lite 2**.
* **OpenBSD** est un ''dérivé'' de **NetBSD 1.1** donc basé dès le départ sur **4.4BSD-Lite**. La première version officielle est **OpenBSD 2.0** publiée le 1er octobre 1996.
* **DragonFly BSD** résulte d'un **fork** en 2003 de **FreeBSD 4.8** mené par **Matt Dillon**, jugeant le nouveau **système de threading** et **SMP** (**//Symmetric multiprocessing//**) de **FreeBSD 5** peu ''performant'' et difficile à ''maintenir''. Ce ''projet'' est la continuation logique de **FreeBSD 4**. Le **système** à bien ''divergé'' de **FreeBSD**.
* **RetroBSD**, un **fork** de **2.11BSD** conçu pour fonctionner sur des **microcontrôleurs** tels que le **PIC32**.
* **LiteBSD**, une variante de **4.4BSD** **Unix** pour les **microcontrôleurs** **PIC32MZ**
* [[wiki:systemes_d_exploitation:macos|macOS]] d'**Apple** (appelé initialement **Mac OS X**) s'est basé à l'origine sur **Rhapsody** qui était basé sur **4.4BSD**, **Rhapsody** est un descendant de **NeXTSTEP** de **NeXT** qui était basé sur **4.3BSD** (**4.3BSD-Tahoe** puis **4.3BSD-Reno**). Acuellement **macOS** utilise les **utilitaires standards** d'**Unix** provenant de **FreeBSD** et utilise un **noyau enrichi hybride** du nom de **XNU** (basé sur le **noyau Mach 3** et utilisant le **noyau BSD** de **FreeBSD** en tant que **service du système d'exploitation**).
[[wiki:systemes_d_exploitation:macos|macOS]] est partiellement ''libre'' (le **système de base Darwin**) mais tous les **logiciels** spécifiques à **Apple** (comme **iTunes**) ne le sont pas.