====== SunOS première OS de Sun Microsystems basé sur BSD ====== Logo de **Sun** : {{ :wiki:histoire_informatique:pngegg_16_.png?nolink&160 |}} ===== Présentation de SunOS ===== **SunOS** était un système d'exploitation **UNIX** basé sur **BSD UNIX** du **CSRG** (**//Computer Systems Research Group//**) de l' **UCB** (**//Université de Californie à Berkeley//**), créé en 1982 par l'entreprise **Sun Microsystems**, pour ses **stations de travail** et ses **serveurs informatiques** créés eux aussi par Sun Microsystems. Le système BSD SunOS comprenait les versions de **SunOS 1.0** à **SunOS 4.1.4**, suite à cela, SunOS représentait uniquement le **noyau** du système d'exploitation qui était désormais basé sur **UNIX system V Release 4**, à partir de **SunOS 5.0**. Dans cette article nous faisons référence à SunOS basé sur BSD. ===== Versions de SunOS ===== ==== Sun UNIX 0.7 ==== La toute première version de SunOS n'était pas basée sur BSD mais sur **UniSoft UNIX v7** qui était un portage de ''Unix version 7'' des **Bell Labs** conçue pour les processeurs de type **Motorola 68000** par la société **UniSoft** pour la gamme d'ordinateurs **Sun-1** (qui était composée de **stations de travail** et **serveurs**). Le nom commercial de cette version était **Sun UNIX 0.7**. ==== SunOS 1.0 à SunOS 1.2 ==== **SunOS 1.0** publié en novembre 1983 a été la première version à se baser sur BSD, plus précisément **4.2BSD** et était compatible avec les ordinateurs de la gamme Sun-1 et a introduit la gamme **Sun-2** basée sur le processeur **Motorola 68010**. Cette version a également inclue le système de fenêtrage du nom de **Sun Window System**. La branche **SunOS 1.x** c'est terminée à **SunOS 1.2** sortie en janvier 1985. ==== SunOS 2.0 ==== **SunOS 2.0** est sorti en mai 1985, cette version était toujours basée sur 4.2BSD, elle intégrait le nouveau système de fichiers réseau pour le partage de fichiers à distance nommé **NFS** (**//Network File System//**), créé par Sun Microsystems en 1984, le protocole de service d'annuaire en mode **client-serveur** appelé **Yellow Pages** (**//YP//**), prédécesseur de **NIS** (**//Network Information Service//**), le format standard de sérialisation des données du nom de **XDR** (**//External Data Representation//**), l'appel de procédure à distance nommé **RPC** (**//Remote Rrocedure Call//**), la couche de système de fichiers virtuels appelée **VFS** (**//Virtual File System//**). ==== SunOS 3.0 à SunOS 3.5 ==== **SunOS 3.0** publié en février 1986, doté de trois mécanismes de communication interprocessus : les files d'attente de messages, le sémaphore et la mémoire partagée appelés **System V IPC** (**IPC** signifiant **//Communication_Inter-Processus//**). **SunOS 3.2** sortie en septembre 1986 était la première version à prendre en charge la série d'ordinateurs **Sun-4**, ordinateur qui n'était plus basé sur les **Motorola M68k** mais sur les processeurs maison de Sun, les **SPARC V7**. SunOS 3.2 était similaire à SunOS 3.0, à ceci près qu'elle intégrait des fonctions de **4.3BSD**. **SunOS 3.5** est sortie en janvier 1988 et est pour ainsi dire identique à SunOS 3.2, cette version comprend juste des mises à jour et correctifs. ==== SunOS 4.0 à SunOS 4.0.3c ==== **SunOS 4.0** sortie en décembre 1988, se base désormais sur **4.3BSD** avec les **IPC SystemV**, cette version intègre un nouveau système de mémoire virtuelle, un éditeur de liens dynamiques qui charge et lie les bibliothèques partagées, nécessaires à un exécutable lors de son exécution, un automounter, qui monte automatiquement des systèmes de fichiers, en réponse aux opérations d'accès des programmes utilisateur et le framework de //System V//, **STREAMS**, pour l'implémentation de pilotes de périphériques de caractères et de protocoles réseaux et de communication interprocessus. SunOS 4.0 est la première version a être compatible avec les stations de travail du nom de **Sun386i** basé non pas sur les processeurs **SPARC** mais sur l'**Intel 80386** (architecture **x86**) qui partage de nombreuses fonctionnalités de la gamme **Sun-3**. Contrairement aux modèles Sun-3, le Sun386i possède une carte mère de type **PC** et un châssis de type **mini-tour**. **SunOS 4.0.1** n'était d'une mise à jour de SunOS 4.0. **SunOS 4.0.2** sortie en septembre 1989 prenait en charge uniquement les station Sun de la gamme Sun386i. **SunOS 4.0.3** sortie en mai 1989, n'était qu'une suite aux versions précédentes sans ajouts particuliers. Et enfin **SunOS 4.0.3c** sortie en juin 1989 prenait en charge uniquement la **SPARCstation 1** de la gamme d'ordinateur **Sun-4c**. SunOS 4.0 est donc le tout premier BSD à prendre en charge l'Intel 80386 en décembre 1988 mais n'est toutefois pas prévu pour les **compatibles PC** ! Comme précisé précédemment **SunOS 4.0.2** n'était disponible que pour l'ordinateur Sun386i basé sur l'Intel 80386. ==== SunOS 4.1 et SunOS 4.1e ==== **SunOS 4.1** est sortie en mars 1990 et **SunOS 4.1e** est sortie en avril 1991, cette denière version prennait en charge uniquement la gamme d'ordinateur **Sun-4e**. ==== Sun Solaris 1.0 (SunOS 4.1.1 à SunOS 4.1.4) ==== Le système BSD **SunOS 4.1.1** a été renommé **Solaris-1.0**, non pas pour ses nouvelles fonctionnalités mais dans un but purement ''commercial'' pour promouvoir **Sun Solaris 2.0** qui lui n'était non plus basé sur BSD UNIX mais **UNIX System V Release 4**. SunOS avait pour système de fenêtrage, **SunView** et l'environnement de bureau du nom de **OpenWindows**, pour ses stations de travail **UNIX** (''haut de gamme'' pour l'époque). ===== Caractéristiques de SunOS ===== La dernière version de //SunOS// qui est **SunOS 4.1.4** aussi appelé **Solaris 1.0**, pour attirer ses clients à migrer de **BSD** vers **UNIX System V Release 4** (**//SRV4//**) a été publié en novembre 1994, cet OS est composé de **4.3BSD** et de l'**IPC** (**//Inter-Process Communication//**) d'**UNIX System V** qui permet à plusieurs processus de communiquer et de se synchroniser entre eux. //SunOS 4.1.4// dispose de ses différents composants : * **UFS** (**//Unix File System//**) qui est le système de fichiers par défaut des systèmes BSD. * **RPC** (**//Remote Procedure Call//**) et **NFS** (**//Network File System//**) créé par //Sun Microsystems// qui est l'un des premiers système de fichiers en réseau et qui permet le partage de fichiers sur le réseau au même titre que **SMB** (**//Server Message Block//**) de l'entreprise **Microsoft**. * **FHS** (**//Filesystem Hierarchy Standard//**) qui est l'organisation du système de fichiers (arborescence de répertoires) qui était au standard d'UNIX à cette époque. * **System V IPC** pour les files de messages, sémaphores et la mémoire partagée des processus. * D'une **pile TCP/IP** complète provenant à l'origine de **4.2BSD**, qui est toujours le standard d'internet à l'heure actuelle. * Des **Sockets BSD** qui est le modèle de communication réseau dominant. * Du protocole **NIS** (**//Network Information Service//**) pour la gestion centralisée des comptes utilisateurs. * La plupart des **daemons** (**services**) de l'époque, comme routed, telnet, ftp, rsh, rlogin et inted. * **Sendmail** qui est un serveur de mail toujours utilisé sur certains systèmes BSD actuels. * Un **espace utilisateur** (**userland**) très complet pour l'époque, avec la plupart des commandes Unix et les shells **sh** (**//Bourne shell//**), **csh** (**//C-Shell//**) et **ksh** (**//Korn shell//**). * Les **outils d'administration** : admintool, sys-unconfig, dump, restore, mount, df, fsck...etc. * L'environnement de bureau **OpenWindows 3.0** qui est également le DE par défaut de SVR4, composé de : * **NeWS** (**//Network extensible Window System//**) qui est la technologie d'affichage PostScript de Sun. * **X11R5** qui est le serveur //X Window System// plus communément appelé serveur X11. * Le gestionnaire de fenêtres **olwm** (**//Open Look Window Manager//**). * Les API (//Application Programming Interface//) graphiques **XView** et **OLIT**. * Et encore bien d'autres éléments. Si vous souhaitez émuler //SunOS 4.1.4// il faut passer par l'émulateur **QEMU**, plus précisément son simulateur **qemu-system-sparc** pour les processeurs **SPARC** ''32 bits''. Pour les versions antérieurs de //SunOS// vous pouvez de plus utilisé l'émulateur **TME** (**//The Machine Emulator//**). **Sun Solaris 2.0** avec son **noyau SunOS 5.0**, est la première version qui se base sur //UNIX System V Release 4//, SVR4 a été créé suite à un accord entre Sun Microsystems et **AT&T** (plus précisément **AT&T Unix System Laboratories**) pour fusionner **SVR3** (**//UNIX System V Release 3//**) de AT&T, SunOS de Sun Microsystems, 4.3BSD du CSRG et **Xenix** de Microsoft pour la compatibilité binaire avec les processeurs Intel x86. Sun Solaris 2.0 est la version de SVR4 pour l'architecture processeur de type SPARC, spécifique aux ordinateurs de Sun Microsystems. ===== Documentation Supplémentaire sur SunOS ===== Rendez-vous dans les [[wiki:histoire_informatique:sunos:tutos|tutoriels sur SunOS]] pour une documentation plus poussée.