Schéma producteur - consommateur


Figure ci-contre, une tache T1 élabore un message qui doit être transmis au monde extérieur. La transmission est placée sous la responsabilité de la tache T2.
La communication entre T1 et T2 se fera par l'intermédiaire
- d'un tampon T servant de contenant intermédiaire de stockage.
- d'un mécanisme de synchronisation.
Dans ce schéma, T1 est productrice, T2 consommatrice.
Le RdP modélise le protocole de synchronisation entre ces deux taches.
Après que T1 ait déposé la valeur ou le message dans T, elle demande l'activation de T2 en placant un jeton en p3. T2 lit le contenu de T si il y a un jeton en p3.

On vérifie bien dans une simulation du réseau que les temps de production et d'émission peuvent ètre absolument quelconques et n'interfèrent d'aucune façon dans le bon fonctionnement soit la coopération des deux taches. Le temps de production peut ètre beaucoup plus bref que le temps de transmission, mais pour autant, le rythme de production ne sera pas supérieure au rythme de la consommation et vice versa.

Ce schéma de base PRODUCTEUR - CONSOMMATEUR est, on s'en doute, courant dans tout système informatique mais se retrouve aussi partout ou il y a nécéssité de synchroniser production et consommation (atelier de fabrication, chaines de montage, etc.......).
On aura remarqué que le réseau est SAUF (Bonne propriété du réseau). (Examiner les primitives P et V de Dijkstra)