Pour en savoir plus
Les premiers besoins en algorithmes concurrents ont surgi de la programmation
système. Pour cela le modèle impératif à mémoire partagée est le plus utilisé.
Par exemple, la relation d'exclusion mutuelle et les sémaphores sont
utilisées pour la gestion des ressources communes. Dans [Ari86] sont
décrits les différents mécanismes de bas niveau de gestion de processus
muni d'une mémoire partagée.
Néanmoins, la possibilité d'exprimer des algorithmes concurrents dans son langage
de prédilection permet de s'intéresser à ce type d'algorithmique, comme
présentée dans [And91]. Il est à noter que la conception de tels
algorithmes peut simplifier la résolution de certains problèmes, mais la mise
au point des programmes correspondants est assez ardue.
Le modèle de la communication synchrone présenté par CML, et
repris par le module Event, est bien décrit dans [Rep92].
La version en-ligne est à l'adresse suivante :
Lien
http://cm.bell-labs.com/cm/cs/who/jhr/index.html
Un exemple intéressant est la bibliothèque graphique de processus légers, EXene,
implantée en CML au dessus de X-Window. Le lien précédent contient un pointeur
sur cette bibliothèque.