# ChorusOS

ChorusOS est un système d'exploitation pour téléphone mobile en temps réel à micronoyau conçu pour les systèmes embarqués, créé et développé à l'INRIA puis commercialisé par une société éponyme fondée en 1986 par Hubert Zimmermann avec Michel Gien, Marc Guillemont et Pierre Léonard.

## ChorusOS
### Un projet créé à l'INRIA

ChorusOS a d'abord été créé à l'INRIA pour une machine interprétant du langage informatique Pascal et s'appelait Chorus distributed real-time operating system. Le recours au Pascal a permis de développer le concept de messages actifs. En effet le système Chorus résidait sur la transmission de message dans un réseau sans connexion.
L'équipe Chorus du début, constituée de Jean Serge Banino, Alain Caristan, Marc Guillemont, et Gérard Morrisset s'était basée sur l'exécution d'un code dès l'arrivée d'un message sur un port spécifique d'un agent (sorte de processus). Le message actif apporta une autonomie à ce message, qui après avoir été traité, pouvait prendre une décision en fonction du traitement réalisé et de son propre chemin.

### Le projet pilote SOL

De son côté Michel Gien était responsable du projet pilote SOL destiné à mixer les efforts industriels et recherche publique autour d'un système compatible avec SOL, un système d'exploitation Unix. En 1979-1983, il a étudié la portabilité des systèmes d'exploitation, en commençant par le transport du système Unix sur le miniordinateur Mitra 15 et son successeur, le Mini 6 de la CII-HB, ainsi qu'une machine proche au CNET, centre de recherche des PTT, puis en étendant la démarche avec un ordinateur du CNAM lui aussi transformé en routeur et connecté avec les Pays-Bas et les USA en 1983.
UNIX V7, une des versions d'Unix publiée et rendue gratuite par les Bell Labs, est « la première version réellement portable », immédiatement adoptée par les développeurs du miniordinateur DEC PDP-11 et encore « quelque temps, libre de droits », ATT découvrant vite, ensuite, « qu'on peut gagner de l'argent avec les licences UNIX ». Cette version issu en partie des concepts Multics, « vise la simplification, peu d'abstractions et une certaine élégance ».
Concernant Unix, il n'était pas possible d'importer la version tournant sur un ordinateur DEC, ils ont donc créé une version française.
Dans le cadre de ce projet SOL, le laboratoire d’informatique du Cnam lance des recherches poussées sur Unix, prolongées en septembre 1981, par la mise en réseau de divers ordinateurs, afin de créer à l'horizon 1983 FNet premier « réseau expérimental de systèmes Unix » en Europe. L'ordinateur Systime 8750 est relié à une machine Unix à Amsterdam, elle-même reliée aux États-Unis, via le protocole UUCP (Unix to Unix Copy Protocol), permettant aux abonnés français de participer à la communauté internationale de recherche Unix grâce au réseau de données européen EUnet et au service d’échange de messages Usenet.
La présentation du projet SOL est effectuée en octobre 81 par Michel Gien. A cette occasion, le Cigref, représentant des usagers, indique qu'il continue à participer au Comité scientifique du projet. Le Systime 8750 reste nœud du réseau Fnet jusqu’à ce que le relais soit pris. En 1986, le Cnam doit passer le relais à l’Inria, pour des raisons financières.
En 1984, une partie de l'équipe SOL, constituée de Michel Gien François Armand et Pierre Léonard, travaille de concert avec l'équipe Chorus afin de maquetter une première ébauche d'un système distribué sur une architecture MIMD multiprocesseur hétérogène, la SM 90 (Ulrich Finger et Ciaran O'Donnel, CNET), dans laquelle les divers processeurs communiquent par échanges de messages, via un fond de panier, tout en ayant une mémoire en propre.
Selon Michel Gien, « Chorus visait à inventer un nouveau modèle de système d'exploitation, dit réparti, capable de gérer plusieurs ordinateurs connectés entre eux via un réseau ».
Sur la petite dizaines de chercheurs, plusieurs de l'équipe sont partis travailler au CNET avec Hubert Zimmermann et Pierre Léonard. Ils ont donc utilisé la machine que le CNET leur allouait, un SM90, qui devient ainsi la « première machine UNIX en France » en 1982 pour finaliser un prototype.
L'idée est celle du premier système réparti multiprocesseur compatible avec UNIX . L'équipe a dans la foulée développé un OS pour les supercalculateurs d'ICL, Cray Research, Unisys et pour ATT Unix Systems Laboratories, puis pour les équipementiers des télécoms, comme Ericsson, Nokia, Nortel, Fujitsu et Lucent.
La conception de Chorus était marquée par la réactivité et la sûreté attendue, notamment, dans les systèmes téléphoniques. Tandis que la version Unix du SM90 est diffusée à partir de 1983 par la société SEMS- et Telmat, le développement de Chorus est repris par une société privée, Chorus Systèmes, considérée comme une forme de « spin off de l'INRIA ». Cette dernière conserva l'aspect distribué en y ajoutant le temps réel et la modularité.

### La société Chorus Systèmes

Ainsi en janvier 1987 démarre la « conquête » de ce nouveau marché par Chorus Systèmes. Basée dans la ville nouvelle de Saint-Quentin-en-Yvelines, à Montigny le Bretonneux, son effectif a atteint 70 personnes au début des années 1990 et était l'éditeur du système d'exploitation temps réel distribué ChorusOS.
Elle fit face au système du noyau Mach sur lequel sont basés Mac OS X et iOS, cocréé par Avadis Tevanian et Richard Rashid (en). Avadis Tevanian passera chez NeXT ensuite. Proche de Steve Jobs, il deviendra vice-président de la branche logiciels d'Apple, chargé du développement du système d'exploitation de 1997 à 2006. Le noyau Mach resta cependant très monolithique, son principal apport résidant dans la mémoire virtuelle notamment le COW.
L'autre apport du système MACH d'Avadis Tevanian était le V Kernel de Rick Rashid, qui rejoignit Microsoft pour développer Windows NT.
Au début de la bulle internet, en 1997, Sun Microsystems achète la société éditrice Chorus Systèmes qui réalise alors 10 millions de dollars de chiffre d'affaires.

## Rachats successifs de Chorus Systèmes

Mais ensuite Sun Microsystems l'abandonne en conservant seulement le nom. Certains des fondateurs de Chorus Systems continuèrent dans une nouvelle société, Jaluna, créée en août 2002 qui sera renommée en VirtualLogix en 2006. VirtualLogix offre alors des systèmes embarqués utilisant Linux sur la base d'un hyperviseur, et toujours ChorusOS, renommé C5. La société est alors rachetée par Red Bend, elle-même rachetée par Harmann, elle-même rachetée par Samsung.
L'hyperviseur de VirtualLogix est activement développé dans cet ensemble. D'autres fondateurs de Chorus Systèmes sont restés chez Sun Microsystems, parmi lesquels Hubert Zimmermann. Son slogan « The Network is the computer » est repris par Sun Microsystems.
Le dernier arbre de source de ChorusOS (sous ce nom) a été rendu public sous licence open source par Sun Microsystems. Jaluna a complété ses sources pour le rendre utilisable.