Quand plusieurs processus veulent communiquer, la gestion de pipes peut devenir extrêmement complexe. C'est pour pallier ce problème que le mécanisme de queues de messages a été mis au point.
Les queues de messages sont des sortes de boites aux lettres où un processus peut venir déposer ou retirer des messages s'il en possède la clef. Chaque message peut être associé à un type, ce qui permet à un processus de ne sélectionner que les messages qui l'intéressent.
Tous les processus voulant utiliser une queue de messages doivent partager la même clef. Par ailleurs, chaque processus se voit attribuer un numéro auquel correspondra un type de message et qui servira à identifier le destinataire.
Une queue de messages est définie par