UNIX System V

système d'exploitation

UNIX System V, ou System V (soit « système cinq », 5 étant écrit en chiffre romain), est une version du système d'exploitation d'origine UNIX, dévoilée par l'entreprise AT&T en .

UNIX System V
Plaque AT&T certifiant la licence UNIX System V (Japon).
Plaque AT&T certifiant la licence UNIX System V (Japon).

Famille Unix
Langues anglais
Type de noyau monolithique
État du projet fini
Entreprise /
Développeur
Unix Support Group d’AT&T (USG)
Licence AT&T (1983-1993), Novell (jusqu'en 1994)
États des sources Open source depuis 1996
Écrit en CVoir et modifier les données sur Wikidata
Première version
Dernière version stable Release 5 ()
Méthode de mise à jour Propriétaire
Environnement de bureau Solaris 2 (1992)
Site web http://www.opengroup.org/

System V, par son traitement rigoureux des accès aux données partagées, est une version majeure d'UNIX ; avec le système version BSD, c'est une des deux principales branches de la famille des systèmes UNIX.

La plupart des systèmes UNIX propriétaires (comme AIX, HP-UX, ou encore IRIX) descendent directement de System V[1]. La raison principale est que ces entreprises avaient acheté une licence UNIX auprès d'AT&T. Bien que Linux ne descende pas directement de System V, il s'en inspire beaucoup du fait que System V a servi de base à l'élaboration de la norme POSIX, que Linux tente de respecter au maximum.

Avec les livraisons successives de versions ultérieures appelées « release » (voir ci-dessous), la version initiale est maintenant également connue sous le nom de System V Release 1 (SVR1).

Aperçu

modifier
 
Généalogie des versions d'Unix.

En , American Telephone & Telegraph avait publié la septième édition d'Unix, qui comportait environ 10 000 lignes de code. C'est de cette version que partirent Ken Thompson et des chercheurs de Berkeley pour développer indépendamment un nouveau shell ; peu après (1981), les ingénieurs d'AT&T publiaient la nouvelle version officielle d'Unix, System III.

Apports du System V d'Unix

modifier

System V est le successeur du System III de 1982. Cette année-là, le procès intenté en 1975 contre le monopole d’American Telephone & Telegraph était arrivé à son terme : par décision de justice, la compagnie était démembrée, ce qui déboucha entre autres sur la création d’AT&T. Conséquence de ce démembrement, cette nouvelle société obtenait par là-même l’autorisation de commercialiser son système d'exploitation, Unix : pour un montant symbolique, elle le distribua dans un grand nombre d'établissements de recherche (500 sites en 1977, dont 125 universités américaines[2]).

Le point de départ de cette nouvelle étape est la prise en charge du concept de mémoire partagée par plusieurs processus concurrents. Pour cela, System V attribue systématiquement à chaque processus un identifiant et une clef, qui permettent de gérer, par l'intermédiaire de sémaphores, les priorités d'accès sur un fichier (un segment-mémoire), une file de messages ou un flux de données[3],[4].

Dans les années qui suivirent la création d’AT&T, il y eut plusieurs groupes de travail successifs pour poursuivre le projet de System V, à commencer par l’Unix Support Group (USG) ; puis il y eut Unix System Development Laboratory (USDL), AT&T Information Systems (ATTIS) et enfin Unix System Laboratories (USL).

Rivalité avec BSD : la « guerre des Unix »

modifier

Au milieu des années 1980, l’autre variante répandue d’Unix était la Berkeley Software Distribution (BSD), développée par l’université de Californie à Berkeley (c'est pourquoi on parlait alors d’« Unix Berkeley[5] »). Depuis la version BSD 4.2, elle intégrait notamment un ingrédient faisant défaut à System V : le protocole d'échange réseau TCP/IP.

Quoique dérivée de la « septième édition » d’Unix, comme System V, elle s’en était considérablement écartée ; de plus, les distributions commerciales créaient autant d’idiomes à l’intérieur des deux philosophies d'Unix. Ainsi, lors d'une conférence Usenix, des représentants d’AT&T portaient des pin’s avec l'inscription : System V: Consider it Standard, tandis que plusieurs constructeurs informatiques proposaient des ordinateurs émulant System V. Les vendeurs de stations de travail professionnelles équipaient presque tous leurs machines d’un système d’exploitation BSD, et leurs prospectus signalaient qu’une migration "4.2 > V" était disponible.

Si AT&T vendait des ordinateurs qui tournaient en version de base sous le System V d’UNIX, la plupart de ses clients connaissaient plutôt les versions des différents fabricants de stations de travail, dérivées du System III d’AT&T. Les utilisateurs pouvaient s'y retrouver grâce à un document synoptique, le System V Interface Definition, qui recensait les options par défaut et le format de sortie des commandes.

En 1984, un groupe de constructeurs informatiques se regroupa au sein de l'initiative X/Open pour un format ouvert, et leur choix se porta sur Unix. X/Open inspira les dirigeants d’AT&T qui, pour aplanir les différences nées des différents idiomes d'Unix, s'associèrent à leur tour en 1987 à Sun Microsystems (à l'époque l'un des principaux acteurs du monde des stations de travail UNIX), pour publier la « version 4 » du System V (SVR4).

Si cette initiative fut saluée par les consommateurs et la presse professionnelle, les autres compagnies franchisées par Unix craignaient un favoritisme envers Sun[6] : elles se groupèrent donc en 1988 pour partie au sein de l’Open Software Foundation (OSF), et pour partie sous la bannière d’AT&T sous le collectif UNIX International (UI). Les différends techniques prirent bientôt une tournure de compétition commerciale agressive opposant les deux « versions libres » d’Unix, celle de X/Open constituant un compromis.

De la fin des années 1980 au début des années 1990, System V constituait donc l’une des deux grandes versions d'UNIX, l’autre étant la Berkeley Software Distribution. Eric S. Raymond résume la confrontation entre System V et BSD de la façon suivante :

«  En fait, dans les années qui suivirent la bifurcation entre les deux systèmes, la communauté Unix était déchirée par la première phase de la guerre des Unix — une querelle interne, opposant System V et BSD. Cette querelle se jouait sur différents niveaux, les uns techniques (« Berkeley sockets » contre « flux » de SysV, commande tty de BSD contre signal termio de SysV), les autres plus culturels. Le désaccord était du genre cheveux longs contre cheveux courts ; les programmeurs et les ingénieurs étaient plutôt partisans de Berkeley et BSD, les professionnels plutôt en faveur d'AT&T et son System V. »

— Eric S. Raymond, The Art of Unix Programming (2003), p. 38

Si Hewlett-Packard, IBM et d'autres constructeurs optaient pour System V, leurs concurrents (par exemple Sun Microsystems et DEC) proposaient des extensions de BSD. Cela dit, tout au long de sa phase de développement, System V s'enrichissait de caractéristiques de BSD, et il faut dire que des variantes de BSD, comme le système Ultrix de DEC, se voyaient dotées de caractéristiques du System V.

Depuis le début des années 1990, avec les efforts de standardisation, comme la norme POSIX et la popularité de Linux, les différences entre System V et BSD sont passées au second plan.

Les versions successives

modifier

System V Release 1 (SVR1)

modifier

La première version (appelée System V.0 ou System V Release 1) a été publiée en 1983. Développé par l'UNIX Support Group d'AT&T, elle était basée sur UNIX 5.0 de l'Unix Support Group de Bell Labs. System V incluait l'éditeur vi ainsi que la bibliothèque curses, issu du système BSD développé à l'Université de Californie. Les performances avaient été améliorées par l'ajout du cache buffer et du cache d'i-nœuds. De plus, SVR1 apportait le support des communications inter-processus, des sémaphores, et de la mémoire partagée.

System V Release 2 (SVR2)

modifier

La SVR2 a été publiée en 1984. De nouvelles fonctions ont été ajoutées au noyau, comme le verrouillage de fichiers. Cette version a servi de base à HP-UX.

System V Release 3 (SVR3)

modifier

La SVR3 a été publiée en 1987[7].

System V Release 4 (SVR4)

modifier

La SVR4 a été publiée en 1989[7]. C'est une version majeure de System V, développée dans le cadre d'une collaboration entre l'Unix Systems Group des laboratoires Bell et Sun Microsystems. Elle incorpore de la technologie de 4.3BSD, XENIX, et SunOS, en particulier le support de TCP/IP, du csh, de NFS.

La version SPARC de SVR4 devint Solaris 2 à la fin de la coopération entre Sun et AT&T.

System V Release 5 (SVR5)

modifier

Cette version 5 du System V a été développée en 1997 par Santa Cruz Operation (SCO) : ciblant les gros serveurs d'entreprise, elle résulte de la fusion de l'OpenServer SCO (dérivé de la version 3 de System V) et d’UnixWare. Le SCO Group, successeur de SCO, faisait dépendre l'OpenServer 6 SCO de SVR5, mais son code source ne sera plus utilisé par aucun développeur ni distributeur par la suite.

La société Santa Cruz Operation (SCO), qui détenait les droits du système d'exploitation XENIX, décida d’acheter à Novell les droits de la marque UnixWare et les droits de distribution des sources de la version 4.2 de System V, tandis que d'autres fabricants (Sun, IBM, HP) continuaient à installer et développer la version 4. Novell finit par céder les droits de la marque Unix au consortium The Open Group. Selon cet organisme de certification, tout système d'exploitation qui respectait la Single Unix Specification (SUS), version mise à jour du System V Interface Definition, bénéficiait des droits et prérogatives attachés à Unix : il y avait là le Mac OS X d’Apple, dérivé de BSD, ainsi que plusieurs autres systèmes d'exploitation.

System V Release 6 (SVR6)

modifier

La société Santa Cruz Operation (SCO) avait prévu de sortir une release du système fin 2004 mais le projet a été abandonné. Le système était censé être développé en 64 bits.

Notes et références

modifier
  1. Une exception est ULTRIX, qui est issu de BSD, mais qui a incorporé assez vite plusieurs caractéristiques de System V.
  2. Cf. (en) Michael Kerrisk, The LINUX Programming Interface, San Francisco, No starch Press, , 1508 p. (ISBN 978-1-59327-220-3, lire en ligne), « History and Standards », p. 3.
  3. Cf. (en) W. Richard Stevens, Advanced Programming in the UNIX Environment, Reading (Massachusetts), Addison & Wesley, , 744 p. (ISBN 0-201-56317-7), « Interprocess Communication », p. 449-453.
  4. Cf. (en) Michael Kerrisk, The LINUX Programming Interface, San Francisco, No starch Press, , 1508 p. (ISBN 978-1-59327-220-3, lire en ligne), « Interprocess Communication Overview », p. 882-.
  5. D'après Simson Garfinkel, Gene. Spafford et Alan Schwartz, Practical UNIX and Internet Security., , p. 15-20.
  6. Karen Southwick, High Noon : The Inside Story of Scott McNealy and the Rise of Sun Microsystems, John Wiley & Sons, , 242 p. (ISBN 978-0-471-29713-0, lire en ligne), p. 76.
  7. a et b (en) The Open Group, « History and Timeline : UNIX Past » (consulté le ).