Author: Christian.Queinnec@lip6.fr

## 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és pour la gestion des ressources communes. Les différents mécanismes de bas niveau de gestion de processus accédant à une mémoire partagée sont décrits dans [Ari86].
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é dans l'ouvrage [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-Windows. Le lien précédent contient un pointeur sur cette bibliothèque.