====== Systèmes UNIX® et de Type Unix (Unix-like) ======
{{ :wiki:systemes_d_exploitation:unix-like.png?nolink&400 |}}
===== Présentation des systèmes UNIX et Unix-like =====
==== UNIX ====
**Unix** est né en 1969, par **Kenneth Thompson** et **Dennis Ritchie**, sur un **mini-ordinateur** de l' ''entreprise'' **Digital Equipment Corporation** (**//DEC//**) appelé le **DEC PDP-7** dans les laboratoires **Bell Labs** détenu par **AT&T**. À l'origine **Unix**, s'appelait, **UNICS** pour **Uniplexed Information and Computing Service** qui était un jeu de mots avec l'**OS** nommé **Multics** pour **MULTiplexed Information and Computing Service**, car **Unix** reprenait énormément de ''fonctionnalités'' de **Multics** mais la différence entre ses deux **OS** est que chaque **utilitaire** d'**UNICS** faisait une seule et même **tâche**, puis **UNICS** fût renommé **Unix** à la sortie de [[wiki:histoire_informatique:research_unix#unix_version_1|Unix version 1]] des **Bell Labs** en 1971 (l'**Unix** des **Bell Labs** était aussi nommé **Research Unix**), cette version a été installée sur un **DEC PDP-11/20**, à **architecture** ''16 bits''.
Pour la petite histoire, à la base, **Unix** a été **développé** (en **langage assembleur**, le **New Ken's**) pour ''porter'' le jeu **Space Travel** de **Ken Thompson** sur **PDP-7**, car une partie de ce **jeu** coûtait entre ''50 $'' et ''75 $'' sur un **ordinateur central** de la ''société'' **General Electric**, le **GE-635**, qui fonctionnait sous l'**OS** appelé **GECOS**, renommé plus tard **GCOS** (**//General Comprehensive Operating System//**).
C'est à partir d'[[wiki:histoire_informatique:research_unix#unix_version_4|Unix version 4]] des **Bell Labs**, que **Unix** a été ''porté'' sur le **DEC PDP-11/45** (nouveau **mini-ordinateur** ''16 bits'' de **DEC**) et intégralement ''réécrit'' en **langage C** pour sa ''portablitité'', en lieu et place de l'**assembleur** mais c'est à partir d'**Unix version 5** que **Unix** a commencé à se faire connaître par les **entreprises** et **universités**, et c'est d'ailleurs à partir de cette version qu'**Unix** à fait son entré au sein de l'**Université de Californie à Berkeley** (**//UCB//**), à la demande du ''professeur'' **Bob Fabry**, en 1974, qui a acheté une **licence** d'**Unix** auprès de **AT&T**. Mais c'est à l'arrivé d'**Unix version 6**, également appelé **V6**, publié en mai 1975, que [[wiki:histoire_informatique:bsd_unix_anciens|BSD]] (**//Berkeley Software Distribution//**) de l'**Université de Californie à Berkeley** a été créé par **Bill Joy** le 9 mars 1978 sous le nom de **1BSD**, cette version de **BSD** n'était qu'à la base, un ensemble de **logiciels** pour étendre **Unix version 6**. Toutefois, la version de l'**Unix des Bell Labs**, qui est la plus ''populaire'', est **Unix version 7** (**V7**), sortie en janvier 1979, suivi de **2BSD** de l'**UCB** en mai 1979 puis de **UNIX/32V**, abrégé **32V** en juin 1979 qui était une version de la **V7** pour le nouveau **mini-ordinateur** ''32 bits'' de **DEC**, appelé **VAX-11**. Certains puristes disent même que **Unix version 7** est le dernier ''vrai'' **Unix** ! D'ailleurs **Unix version 7** a été ''porté'' sur l' ''architecture'' **x86** par le groupe **Nordier & Associates**.
À savoir que le **langage C** a été ''écrit'' pour **Unix** par **Dennis Ritchie**, à l'aide de **Brian Kernighan** au cours de l'année 1972, à partir du **langage B** de **Ken Thompson**, lui même influencé par le **langage BCPL** (**//Basic Combined Programming Language//**), qui a servi a créer **TripOS**, l'ancêtre d'**AmigaDOS**, qui est la partie **ligne de commande** d'**AmigaOS**.
L'**Université de Californie à Berkeley** à fait l'acquisition d'un **VAX-11** en 1978 et a installée **UNIX/32V** (le seul **Unix** disponible pour le **VAX-11**), qui ne prenait pas en charge la **mémoire virtuelle paginée** du **VAX-11**, pour résoudre de problème, l'**UCB** a créé **3BSD** en fin d'année 1979, qui est la première version de **BSD** à être un **OS** ''complet'' et non plus un ensemble de **logiciels** pour améliorer l'**Unix** des **Bell Labs**. Le **noyau** d'**UNIX/32V** a été en grande partie ''réécrit'' par **Özalp Babaoğlu**, un étudiant diplômé de l'**UCB**. **3BSD** portait également le nom de **Virtual VAX/UNIX** ou **VMUNIX** (pour **Virtual Memory Unix**), car sous l'**arborescence de fichiers** de **BSD**, le **FHS** (**//Filesystem Hierarchy Standard//**) le **noyau** portait le nom de ''/vmunix'' au lieu du traditionnel ''/unix'' pour les **Unix** des **Bell Labs** et de **AT&T** et ce jusqu'à la dernière version de **BSD** de **Berkeley** du nom de **4.4BSD**, plus précisément **4.4BSD-Lite Release 2**, sortie en juin 1995.
Les versions de **BSD** les plus ''notables'' sont : **4.2BSD**, sortie en août 1983, qui intégrait la première **pile TCP/IP** tous **Unix** confondues (les prémices de l'**internet** tel qu'on le connait à l'heure actuelle), **4.3BSD** a vu le jour en juin 1986 et a grandement ''amélioré'' la **pile TCP/IP** de **4.2BSD**, à tel point que **4.3BSD** a été considéré comme le ''meilleur'' **programme** jamais conçu et le **code source** de sa **pile TCP/IP** a été réutilisé par les ''3/4'' des **OS** et pas seulement **Unix** et pour finir, **4.4BSD** qui a retiré la totalité du **code source** provenant des **Bell Labs** d'**AT&T** et a été ''porté'' sur un nombre considérable d'**architecture processeur**, les [[wiki:systemes_d_exploitation:bsd_unix:distributions_bsd_libres|distributions BSD]] actuelles reposent toutes sur **4.4BSD**. Sachez que la branche **2.xBSD**, spécifique au **PDP-11**, a continuée d'être **développée** en parallèle de la branche pour **VAX** (''32 bits''), d'ailleurs **2.11BSD** continue d'avoir des **patchs** (**correctifs de sécurité**) à l'heure actuelle. Pour plus d'informations, rendez-vous sur la page [[wiki:histoire_informatique:bsd_unix_anciens|BSD]] de l'**UCB**.
De son côté, l' ''entreprise'' **AT&T** qui n'avait pas le ''droit'' de vendre **Unix**, a scindé son **entreprise**, ce qui lui a permit de vendre **Unix**. La première version de l'**Unix** ''commercial'' de **AT&T** a été **UNIX System III**, publié en novembre 1981, cette version était un mélange de différentes ''saveurs'' **Unix** internes au **Bell Labs**, qui sont : **Unix version 7**, **PWB/UNIX 2.0**, **CB UNIX 3.0**, **UNIX/RT** et **UNIX/32V**. Suite à **UNIX System III**, est né [[wiki:histoire_informatique:at_t-unix|UNIX System V]], la première version est **UNIX System V Release 1** (**//SVR1//**) mais la version la plus ''populaire'' est [[wiki:histoire_informatique:at_t-unix#unix_system_v_release_4_svr4|UNIX System V Release 4]] (**//SVR4//**), sur lequel est basé les ''3/4'' des **UNIX®** ''commerciaux'' actuels. Si **SVR4** a eu autant de succès, c'est dû à l'union de **AT&T** et **Sun Microsystems** qui utilisait un système **BSD** du nom de **SunOS**, **SVR4** a intégré divers ''variantes'' d'**Unix**, qui sont : **SVR3**, **4.3BSD**, **Xenix** et **SunOS**.
À savoir qu'à la suite de **SVR4**, il y a eu **UNIX System V Release 5** (**//SVR5//**), qui provient de la fusion de **UnixWare 2** basé sur **SVR4.2MP** et **SCO OpenServer 5** basé sur **SVR3.2**, en 1998, par **SCO** (**//Santa Cruz Operation//**), désormais détenu par **Xinuos**. Mais **SVR5** n'a été repris par aucune **entreprise** et n'a pas eu de réel succès.
Les laboratoires des **Bell Labs** continuèrent à **développer** son **Unix**, qui n'était plus basé sur **Unix version 7** mais sur **BSD**, **Unix version 8** était basé sur **4.1cBSD**, sortie en février 1985, **Unix version 9** a été publié en septembre 1986 et était basé en grande partie sur **4.3BSD** et enfin **Unix version 10** est sortie en octobre 1989 et qui donna naissance à l'**OS** appelé **Plan 9 from Bell Labs** ou plus simplement **Plan 9** qui n'était pas un **Unix** mais s'en inspirait énormément, c'est d'ailleurs sous **Plan 9** qu'a été créé l'**encodage** de type **UTF-8**. La **V8**, **V9** et **V10** ne sont jamais sortis des laboratoires **Bell Labs** mais vous pouvez tout de même **émuler** la **V8** via [[wiki:virtualisation_et_emulation:simh|SimH]].
Sachez que tous les **Unix** actuels ont pour parent **UNIX/32V**, la version ''32 bits'' de **Unix version 7** !
==== Unix-like ====
Les **systèmes** de **Type Unix** (**Unix-like** en anglais), qui n'ont aucuns **codes sources** provenant de **AT&T**, ont assez vite vu le jour, la raison est simple, les premiers **Unix** des **Bell Labs** vendaient leurs **codes sources** (donc la recette de fabrication) par le biais de **licences** de **AT&T** et de ce fait il était plus simple de **développer** un **Unix-like**, qu'un **Windows-like**, par exemple, car **Microsoft** n'a jamais livré ses **sources** et le seul **Windows-like** du nom de **ReactOS** a donc été créé par **rétro-ingénierie**. Un **Unix-like** est un **OS** qui fonctionne et se comporte de manière similaire à **UNIX** et qui a des **normes** communes, comme **POSIX**, le **FHS** (**//Filesystem Hierarchy Standard//**), par exemple. Je ne vais pas citer tous les **Unix-like** mais l'un des premiers est **GNU** (**//GNU’s Not UNIX//**), créé par **Richard Stallman** et annoncé le 27 septembre 1983, qui était une ''réécriture'', en autres des **commandes Unix** mais il lui manquait un composant **logiciel** essentiel, le **noyau** (**kernel** en anglais) mais malgré cela, **GNU** a très vite été utilisé pour les **systèmes Unix** pour étendre leurs **OS**, **GNU** a débuté son **développement** le 5 janvier 1984. L'un des premiers **Unix-like** ''complet'' a été **Coherent** de l' ''entreprise'' **Mark Williams Company**, **entreprise** qui a été fondée en 1977, la première version de **Coherent** (qui était un **Unix-like** ''commercial''), se voulant un **clone** de la **V7** des **Bell Labs**, a été **développée** en 1980, pour le **PDP-11** de **DEC** puis pour les **compatibles PC** (**IBM PC**), à **processeur** type **Intel x86** en 1983 mais aussi le **Zilog Z8000** et le **Motorola 68000**. On peu aussi citer **TROPIX** qui est sorti officiellement en 1985.
Juste pour info, le seul **OS** pour lequel **Microsoft** à livré son **code source** est **MS-DOS 1.25**, enfin en gros tout le monde s'en fout, d'autant qu'il existe **FreeDOS** comme **DOS** libre et qui est bien plus complet que l'antique **MS-DOS**. Par contre malgré ce que beaucoup de personnes peuvent penser, à l'heure actuelle, **Microsoft** est l'une des **entreprises** qui contribuent le plus à l'**open source**, bien sûr ce n'est pas anodin mais c'est tout de même respectable, vue la politique que **Microsoft** avait par le passé à l'**open source**. Je ne vais pas citer de nom mais il y a tellement d'**entreprises** qui se basent sur l'**open source**, sans y contribuer...
Mais l'un des **OS** de nature **Unix-like** les plus ''notables'' est sans doute **MINIX** (**Mini-Unix**), qui a été créé par le professeur **Andrew Stuart Tanenbaum** ou plus simplement **Andrew S. Tanenbaum**, **MINIX** a été créé à l'origine dans un but purement pédagogique, en tant que clone de **Unix version 7**. La permière version de **MINIX**, **MINIX 1.0** est sortie en 1987, **MINIX 2.0** a été publié en 1997 et a ajouté la conformité **POSIX** et enfin **MINIX 3** a vu le jour le 24 octobre 2005. **MINIX** a été compatible avec de nombreux **micro-ordinateurs** différents, comprenant les **processeurs** de la famille **Intel x86** ''16 bits'' et ''32 bits'', **AMD Am286**, **Motorola 68000**, **Sun SPARC**, **NS32532**. De nos jours **MINIX 3** supporte les **processeurs** de la famille **Intel x86** ''32 bits'' et **ARM**. Contrairement à de nombreux **systèmes Unix**, **MINIX** à dès le départ adopté un **micro-noyau** en lieu et place des traditionnels **noyaux monolithiques**. Les **sources** de **MINIX** ont toujours été disponibles au téléchargement mais à l'origine, **MINIX** était ''propriétaire'', c'est en 2000 que **MINIX** est devenu **open source**, sous **licence BSD** à 3 clauses.
Depuis 2008, tous les **processeurs** du fondeur **Intel** intègre le **firmware** appelé **Intel Management Engine** (**//ME//**), qui exécute **MINIX 3**, sans même que l'utilisateur le sache.
**Linus Benedict Torvalds** dit **Linus Torvalds** après avoir fait l'acquisition d'un **micro-ordinateur** avec un **processeur** de type **Intel 80386** a installé **MINIX** sur son nouvel **ordinateur** et de là, il a commencé à **développer** un nouveau **noyau monolithique** qu'il a dans un premier temps nommé **Freax** puis renommé **Linux** à son insu. La première version du **noyau Linux** a été **Linux 0.01**, qui est sortie le 17 septembre 1991. À partir de février 1992, **Linus Torvalds** a mis son **noyau Linux** sous ''licence'' **GNU GPL** et c'est suite à cela que **Linux** a été associé au **projet GNU** pour former les premières **distributions** [[wiki:systemes_d_exploitation:gnu_linux|GNU/Linux]], tel que **MCC Interim Linux**, **Softlanding Linux System** (**//SLS//**), **Yggdrasil Linux/GNU/X**. Les deux **distributions Linux** les plus vielles, encore en **développement** à l'heure actuelle sont : **Slackware**, sortie le 16 juillet 1993 puis **Debian GNU/Linux**, le 16 août 1993. **GNU/Linux** est sans conteste l'**Unix-like** le plus ''populaire'' et il est même plus ''populaire'' que tous les **Unix** confondus, hormis **macOS** d'**Apple** qui repose en grande partie sur **FreeBSD** et **GNU/Linux** est l'**OS** qui est ''porté'' sur le plus de **plateformes** et **processeurs** différents avec l'**Unix** d'excellente facture, **NetBSD** !
===== Les systèmes UNIX =====
À l'heure actuelle les deux principales ''saveurs'' **UNIX** qui se partage le marché, sont les [[wiki:systemes_d_exploitation:bsd_unix|BSD]] ''libres'', sous **licence BSD** et les **OS** **UNIX®** basés principalement sur [[wiki:histoire_informatique:at_t-unix#unix_system_v_release_4_svr4|UNIX System V Release 4]] (**//SVR4//**), qui comporte les **UNIX®** ''constructeurs'', qui sont sous **licence propriétaire** tel que **Solaris**, **HP-UX**, **AIX**,..., et les [[wiki:systemes_d_exploitation:distributions_illumos|distributions illumos]] basées à l'origine sur **Sun OpenSolaris**, principalement sous **licence CDDL**. À savoir que les **UNIX®** basés sur **SVR4** ont pris énormément de ''composants'' provenant de **BSD**, à commencer par la **pile TCP/IP** de **4.3BSD** mais aussi beaucoup d'autres ''éléments'' et depuis peu, [[wiki:systemes_d_exploitation:bsd_unix:freebsd|FreeBSD]] a intégré des ''composants'' d'**OpenSolaris**, à partir de **FreeBSD 7**, publié le 27 février 2008. [[wiki:systemes_d_exploitation:bsd_unix:netbsd|NetBSD]] a également fait de même mais à moins grande échelle. Les **OS** **UNIX** sont très ''stables'', ''sécurisés'', ''robustes'' et peuvent tourner pendant des ''années'' sur **serveurs**, sans nécessités de **reboot**.
Deux autres ''saveurs'' **UNIX** sont également d'importance historique et qui ont eu une influence sur les **UNIX** actuels sont, [[wiki:histoire_informatique:osf_unix|OSF/1]] du ''consortium'' **OSF** (**//Open Software Foundation//**), distribué par la ''société'' **DEC** et **Xenix** de **Microsoft**.
* [[wiki:systemes_d_exploitation:bsd_unix|BSD Unix]] actuels
* [[wiki:systemes_d_exploitation:darwin|Darwin]]
* [[wiki:systemes_d_exploitation:macos|macOS]]
* [[wiki:systemes_d_exploitation:oracle_solaris|Oracle Solaris]]
* [[wiki:systemes_d_exploitation:distributions_illumos|Distributions illumos]]
* [[wiki:systemes_d_exploitation:aix|AIX]]
* [[wiki:systemes_d_exploitation:hp-ux|HP-UX]]
===== Les Unix-like =====
Quand on pense à **Unix-like**, on fait forcément référence à [[wiki:systemes_d_exploitation:gnu_linux|GNU/Linux]], qui est plus que crédible face à **UNIX**, je pense en particulier à [[wiki:systemes_d_exploitation:gnu_linux:debian|Debian GNU/Linux]] qui est idéal pour les **serveurs** mais aussi pour les **postes bureautiques** et même pour bien d'autres usages. Il existe des **distributions Linux** pour quasiment tout type de ''domaine'', par exemple, pour se faire un **media center**, une **console** de **retrogaming**, une **console de jeux** nouvelle génération, type **Steam Deck** avec la distribution **ChimeraOS**, changer le **firmware** de son **routeur** avec **OpenWrt**, il ne vous manques plus que de l'imagination pour créer votre propre ''projet'' avec l'une des nombreuses **distributions Linux**. **Android** peu également être un **OS** intéressant, en ce qui concerne les **OS** ''mobiles'' et les **appareils informatiques** à **processeur** de type **ARM** en général et là je pense en particulier à **Android AOSP** qui permet la création des **roms customs** tel que **LineageOS** mais il y en a encore beaucoup d'autres pour se défaire des griffes de **Google**.
* [[wiki:systemes_d_exploitation:gnu_linux|GNU/Linux]]
* [[wiki:systemes_d_exploitation:android|Android]]
* [[wiki:systemes_d_exploitation:minix|MINIX]]
* [[wiki:systemes_d_exploitation:os_unix_et_unix-like:Fuzix OS]]
* [[wiki:systemes_d_exploitation:os_unix_et_unix-like:Redox OS]]