Sommaire

Les files d’attente de messages

Les files d’attente de messages sont un mécanisme de communication permettant à des processus de s’échanger des messages. Les messages sont stockés dans une file d’attente par les processus émetteurs et délivrés aux processus récepteurs, un processus pouvant jouer les deux rôles.

Les files d’attente de messages sont gérées en mémoire vive par le noyau. Il existe deux implémentations sur les systèmes de type Unix, les files d’attente de messages System V et les files d’attente de messages POSIX. Depuis quelques années, Linux intègre les deux, les files d’attente POSIX étant les plus récemment mises en place.

1. Les files d’attente de messages System V

Une file d’attente de messages System V est un objet géré par le noyau, créé à la demande d’un processus et soumis à des permissions d’accès définies par le processus créateur.

Un processus qui souhaite utiliser une file d’attente de messages, en lecture ou en écriture, doit fournir l’identifiant de la file d’attente. Le noyau contrôle les droits du processus et autorise ou non l’accès.

Un message est une entité indivisible. Cela implique qu’un programme ne peut écrire un message que complètement ou pas du tout. De même en lecture, un processus prélève ...