Wiki Ordunix

Linux, FreeBSD, macOS, Windows et Histoire Informatique

Outils pour utilisateurs

Outils du site


wiki:histoire_informatique:bsd_unix_anciens

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
wiki:histoire_informatique:bsd_unix_anciens [2025/06/09 18:03] – [4.2BSD] Thibault Seguinwiki:histoire_informatique:bsd_unix_anciens [2025/11/16 13:51] (Version actuelle) – [Le Procès contre BSDi et l'UCB] Thibault Seguin
Ligne 5: Ligne 5:
  
 ==== Arrivé de l'Unix des Bell Labs à l'UCB ==== ==== 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. +À demande du professeur d'informatique **Bob Fabry**, l’**Université de Californie à Berkeley** (**//UCB//**) à acheter un **PDP-11/45** de la gamme des mini-ordinateurs **PDP** (**//Programmed Data Processor//**) 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. 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**. 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**.
Ligne 16: Ligne 16:
  
 ==== 3BSD ==== ==== 3BSD ====
-En 1978, un ordinateur **DEC VAX** a été installé à Berkeley mais le seul Unix disponible pour cette architecture était **UNIX/32V** (**32V**) des Bell Labs qui ne supportait pas les fonctionnalités de **mémoire virtuelle paginée** offerte par le **VAX-11**, c'est une des raisons pour laquelle l'UCB à développé **3BSD** en fin d'année 1979 et créé 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, ce nom donné au noyau à perdurer jusqu'à la dernière version de BSD (**4.4BSD**).+En 1978, un ordinateur **DEC VAX** (VAX = //Virtual Address eXtension//a été installé à Berkeley mais le seul Unix disponible pour cette architecture était **UNIX/32V** (**32V**) des Bell Labs qui ne supportait pas les fonctionnalités de **mémoire virtuelle paginée** offerte par le **VAX-11**, c'est une des raisons pour laquelle l'UCB à développé **3BSD** qui a été publié en mars 1980 et créé 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, ce nom donné au noyau à perdurer jusqu'à la dernière version de BSD (**4.4BSD**).
  
 ==== 2.79BSD ==== ==== 2.79BSD ====
Ligne 31: Ligne 31:
  
 ==== Entre 4.1BSD et 4.2BSD ==== ==== 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** (**FFS**), 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.+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** (**FFS**), 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**, qui incluait désormais la pile **TCP/IP** de l'UCB qui était bien supérieur à celle de BBN. À noter que 4.1cBSD a été le système de base de **Unix version 8** des Bell Labs.
  
 ==== 2.9BSD ==== ==== 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, c'est 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.+En 1983, avant la sortie 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, c'est 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 ==== ==== 4.2BSD ====
Ligne 41: Ligne 41:
 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 **ftp** 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**. 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 **ftp** 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**.
  
-<note>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èmes 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 !</note>+<note>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'' (toutes OS confondus et pas seulement les systèmes 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 !</note>
  
 ==== 4.3BSD ==== ==== 4.3BSD ====
Ligne 64: Ligne 64:
 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. 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.
  
-<note>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.</note>+<note>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. Si vous souhaitez installé ces anciens BSD, rendez vous [[wiki:virtualisation_et_emulation:simh:tutos|ici]].</note>
  
 ===== BSD Unix hors de l'UCB pour le Processeur Intel 80386 ===== ===== BSD Unix hors de l'UCB pour le Processeur Intel 80386 =====
Ligne 77: Ligne 77:
 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**.  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**. 
  
-<note>Il faut préciser que se procès, n'empêcha pas le CSRG de continuer le développement de **4.4BSD**.</note>+<note>Il faut préciser que ce procès, n'empêcha pas le CSRG de continuer le développement de **4.4BSD**.</note>
  
 ===== Derniers BSD Unix de l'UCB dépourvus de tout code source de AT&T ==== ===== Derniers BSD Unix de l'UCB dépourvus de tout code source de AT&T ====
Ligne 94: Ligne 94:
 ===== Résumé des BSD Libres Actuels basé sur 4.4BSD ===== ===== 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: 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:os: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 basé 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**.+  * [[wiki:os:bsd_unix:netbsd|NetBSD]], premier dérivé de BSD lancé en 1993, était basé à l'origine basé 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.   * **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.   * **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**.   * **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**   * **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:os: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**).
  
-<note>[[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.</note>+<note>[[wiki:os:macos|macOS]] est partiellement ''libre'' (le système de base [[wiki:os:darwin|Darwin]]) mais tous les logiciels spécifiques à Apple (comme **iTunes**) ne le sont pas.</note>
  
  
wiki/histoire_informatique/bsd_unix_anciens.1749492224.txt.gz · Dernière modification : de Thibault Seguin