Amoeba (système d'exploitation)

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche

Amoeba
Entreprise /
Développeur
Andrew S. Tanenbaum
Frans Kaashoek
Licence Licence MIT[1]
Première version Voir et modifier les données sur Wikidata
Dernière version stable le 30 juillet 1996, il y a 23 ans[2]
Site web http://www.cs.vu.nl/pub/amoeba/

Amoeba est un système d'exploitation distribué développé par Andrew Tanenbaum avec d'autres personnes à l'université libre d'Amsterdam. Le projet Amoeba avait pour objectif de mettre en place un système de partage de temps (processeur) faisant en sorte que tout un réseau d'ordinateurs apparaisse à l'utilisateur comme une seule machine[3].

Le développement à l'université libre d'Amsterdam est interrompu : le code source de la dernière version (5.3) a été modifié pour la dernière fois le [4].

Le langage de programmation Python a été développé à l'origine pour cette plate-forme[5].

Le projet[modifier | modifier le code]

Le but du projet Amoeba était de faire un système d'exploitation pour les réseaux d'ordinateurs avec lesquels un utilisateur interagirait comme s'il s'agissait d'une seule machine.

Un réseau d'Amoeba est composé de plusieurs stations de travail connectées à un groupe de processeurs. Exécuter un programme le fait tourner sur n'importe quel processeur disponible, tandis que le système d'exploitation gère la répartition de charge. Mais Amoeba ne gérait pas la migration de processus, à l'inverse de son contemporain Sprite. Les stations de travail servaient surtout de terminaux connectés. Outre les stations et les processeurs, d'autres machines pouvaient servir de serveurs de fichiers, services d'annuaires, connections TCP/IP, etc.

Amoeba est un système d'exploitation micro-noyau. Il gère le multi thread et un mécanisme de RPC (remote procedure call) pour la communication entre threads, en utilisant le réseau le cas échéant. Les threads du kernel utilisent le même système. Chaque thread a un "port", un numéro de 48 bits unique sur tout le réseau, qui sert d'adresse pour la communication.

Unix a servi de modèle pour l'interface utilisateur et les API de Amoeba, une compatibilité POSIX ayant même été partiellement implémentée. Une partie du code pour l'émulation Unix provenait d'utilitaires de MINIX, l'autre système d'exploitation d'Andrew Tanenbaum. Les premières versions utilisaient un système d'affichage "maison" que les auteurs considéraient "plus rapide", "`à nos yeux, plus propre" et "plus petit, bien plus facile à comprendre". Mais la version 4.0 utilise le X Window System. Le protocole réseau utilisé était FLIP (Fast Local Internet Protocol).

Voir aussi[modifier | modifier le code]

Notes et références[modifier | modifier le code]