Multics
# Multics

Multics (acronyme de MULTiplexed Information and Computing Service) est le nom d'un système d'exploitation en temps partagé.

Ce projet a été lancé en 1964, par Fernando Corbató et Jerry Saltzer. Le projet Multics a marqué la conception des systèmes d'exploitation notamment après la réutilisation et la diffusion dans le système Unix de nombreux éléments qui en faisait un système novateur : système de fichier hiérarchique, temps partagé, multitâche préemptif, multiutilisateur, sécurité.

## Héritage

Ken Thompson et Dennis Ritchie, issus des équipes de Multics, en développèrent une version simplifiée : Unix. Cet héritier direct implémenta la plupart des avancées de son aïeul, et a influencé la plupart des systèmes d'exploitation modernes, qui implémentent à leur tour nombre de concepts mis en place par Multics.

## Histoire

### Création

Multics fut conçu à partir de 1964, conjointement par le MIT, les Laboratoires Bell et General Electric. Les Laboratoires Bell se retirèrent du projet en 1969 puis General Electric vendit en 1970 son département informatique à Honeywell. Le MIT termina seul le projet $^,^,.$ En 1990, Fernando Corbató reçut le Prix Turing pour son rôle de leader dans le projet Multics.

La très grande majorité du système d'exploitation (> 90 %) était écrite en PL/I (langage développé initialement par IBM). Seules les parties du système d'exploitation pour lesquelles l'efficacité est cruciale (gestion de la mémoire) étaient codées en assembleur natif.

Quand les Laboratoires Bell se retirèrent du projet, deux ingénieurs qui travaillaient sur Multics (Ken Thompson et Dennis Ritchie) lancèrent leur propre projet baptisé initialement UNICS (UNiplexed Information and Computing Service) par opposition entre Uniplexed/Multiplexed du projet Multics qu'ils jugeaient beaucoup trop compliqué. Le nom fut ensuite modifié en UNIX.

À la suite du rachat de la branche informatique de General Electric par Honeywell, ce fut cette société qui commercialisa Multics à partir de 1970 et jusqu'à son propre rachat par Bull en 1975. La société française distribua Multics jusqu'en 2000, et ouvrit son code en 2006.

### Déclin

Au milieu des années 1980, Honeywell mit fin au développement du système d'exploitation. Ils vendirent la section informatique à Bull, qui mit fin à la production du matériel (Honeywell DPS8 M) pour MULTICS. En fait, il s'agissait de DPS8 dont le câblage mémoire avait été modifié pour prendre en compte la gestion de "la mémoire associative".

Ainsi, tous les sites utilisant Multics commencèrent à changer de système d'exploitation. Le dernier système Multics connu a été arrêté le 30 octobre 2000 au Ministère de la Défense nationale du Canada, à Halifax.

En 2006, Bull décida de publier le code source de la dernière version de MULTICS.

## Caractéristiques techniques

Multics était écrit en langage PL/I.

### Héritage de CTSS

Multics a emprunté de nombreux concepts au système d'exploitation CTSS, dont il dérive. Il a lui-même exercé une influence majeure sur UNIX.

De CTSS, Multics a hérité :

* le concept de temps partagé, qui permet à plusieurs utilisateurs d'utiliser en même temps la machine ;
* le système d'invite de commande, à l'origine du shell d'aujourd'hui ;
* le principe du traitement de texte, permettant une typographie de qualité par ordinateur.

### Apports

Un des objectifs de Multics était de permettre le contrôle par un terminal distant.

Pour assurer l'intégrité des données et la sécurité entre les utilisateurs simultanés, Multics a introduit la notion d'anneaux (Rings) destinés à sécuriser le système d'exploitation. Le principe était d'avoir obligation de passer par des portes (gateways) pour accéder à l'anneau de niveau inférieur. Le nombre d'anneaux était de 7, le niveau 0 (zéro) étant le plus protégé (noyau), le niveau 6 étant l'espace réservé aux applications des utilisateurs. Pour accéder à des "services systèmes" E/S par exemple, il fallait obligatoirement passer à un niveau inférieur par une des portes de l'anneau concerné.

Multics supportait la segmentation de la mémoire, la mémoire virtuelle, l'implémentation de langages de haut niveau (not. Multics PL/I et Algol ), la pluralité des langages de programmation (nouveauté par rapport à ses contemporains). Il fut en outre le premier système d'exploitation à intégrer la notion de sécurité informatique (liée au multiutilisateurs) dès sa conception. Cependant la première version de sa sécurité était défaillante et fut repensée à la fin des années 1960.

Multics a été le premier système d'exploitation à implémenter certaines caractéristiques qui ont été reprises par Unix avant de devenir des éléments standards aux systèmes d'exploitation. Parmi ses caractéristiques, il était doté d'un système de fichier $hiérarchique^,$ dont les chemins pouvaient avoir une taille et des caractères arbitraire. Il permettait en outre les liens symboliques, les périphériques amovibles et leur branchement à chaud.

Une autre caractéristique reprise par Unix fut l'utilisation d'une pile d'exploitation par tâche, pour réaliser un multitâche préemptif.

## Ambition

Multics fut conçu pour distribuer du calcul à la façon dont se fait la distribution d'électricité et du téléphone, avec une ressource centrale sur laquelle les utilisateurs sont connectés. En conséquence, nombre de ses composants se centraient sur la haute disponibilité.

Il fut conçu comme un produit commercial de General Electric et en fut un pour Honeywell, mais eut peu de succès. Cependant, il fut très important par le grand nombre d'idées novatrices qu'il apportait dans le domaine des systèmes d'exploitation et des critiques qu'il généra.

De grandes entreprises comme la NSA, Ford et General Motors utilisèrent Multics.

## Multics en France

En France, au début des années 1980, Multics a été largement distribué dans le monde universitaire qui devait acheter les équipements français de la société Bull. C'est ainsi que le Centre Interuniversitaire de Calcul de Grenoble (CICG) disposa, au début des années 1980, d'un ordinateur HB68 sur lequel le système Multics fut opérationnel et fut utilisé par de nombreux chercheurs dont ceux de l'IMAG.

Bull, partenaire de Honeywell, vendit des configurations sur 31 sites pour succéder aux Iris 80 de CII. Bull développa le système d'exploitation GCOS 6 dérivé de Multics. Ce fut un succès financier (et technique), avec des centaines de clients dans les années 1980 et 90.

En France, en 1973, Multics était toujours enseigné à l'Université Paris VI - Jussieu au sein de "l'Institut de Programmation, DEA de Programmation et Recherche Opérationnelle".

Les premières conversations (Chat) entre deux terminaux télétypes l'un à Billerica près de Boston et l'autre au siège de Honewell-Bull (au 64, avenue Gambetta à Paris 20) ont été réalisées sous Multics en mai 1974 et avaient lieu quotidiennement pour dialoguer sur l'état d'avancement du développement du DPS7 (GCOS-64 ou GCOS7). Les mainframes utilisées des deux côtés étaient des GE-645, version évoluée du GE-635.

