mq_overview | Début | Suivant | Sommaire | Préc.page.lue | Accueil |
NOM | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
DESCRIPTION | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Les files de messages sont créées et ouvertes avec mq_open(3) ; cette fonction renvoie un descripteur de file de messages (mqd_t), qui sera utilisé pour faire référence à une file de messages ouverte dans des appels ultérieurs. Chaque file de messages est identifiée par un nom de la forme /unnom. Deux processus peuvent agir sur la même file en passant le même nom à mq_open(3).
Les messages sont transférés de et vers une file avec respectivement mq_receive(3) et mq_send(3). Lorsqu'un processus a fini d'utiliser une file, il la ferme avec mq_close(3), et lorsque la file n'est plus nécessaire, elle peut être supprimée avec mq_unlink(3). Les attributs peuvent être obtenus et (dans certains cas) modifiés avec mq_getattr(3) et mq_setattr(3). Un processus peut demander une notification asynchrone de l'arrivée d'un message sur une file précédemment vide avec mq_notify(3).
Un descripteur de file de messages est une référence à une description de file de messages ouverte (cf. open(2)). Après un fork(2), un fils hérite d'une copie des descripteurs de file de messages du père, et ces descripteurs font référence aux mêmes descriptions de file de messages ouvertes que les descripteurs du père. Les descripteurs correspondants dans les deux processus partagent les attributs (mq_flags) qui sont associés à la description de file de messages ouverte.
Chaque message a une priorité priority, associée et les messages sont toujours délivrés au processus récepteur avec la plus forte priorité. Les priorités des messages s'échelonnent de 0 (plus basse) à sysconf(_SC_MQ_PRIO_MAX) - 1 (plus haute). Sous Linux, sysconf(_SC_MQ_PRIO_MAX) renvoie 32768 mais POSIX.1-2001 ne réclame qu'un intevalle de priorité entre 0 et 31 ; certaines implémentations ne fournissent que cet intervalle.
Le reste de cette section décrit certains détails spécifiques à l'implémentation Linux des files de messages POSIX.
Interfaces bibliothèque et appels système | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Interface bibliothèque | Appel système |
mq_close(3) | close(2) |
mq_getattr(3) | mq_getsetattr(2) |
mq_open(3) | mq_open(2) |
mq_receive(3) | mq_timedreceive(2) |
mq_send(3) | mq_timedsend(2) |
mq_setattr(3) | mq_getsetattr(2) |
mq_timedreceive(3) | mq_timedreceive(2) |
mq_timedsend(3) | mq_timedsend(2) |
mq_unlink(3) | mq_unlink(2) |
Versions | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Configuration du noyau | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Persistence | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Édition de liens | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Interfaces /proc | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Limites resources | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Monter le système de fichiers des files de messages | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
$ mkdir /dev/mqueue $ mount -t mqueue none /dev/mqueueLe sticky bit est automatiquement activé sur le répertoire monté.
Après que le système de fichiers ait été monté, les files de messages sur le système de fichiers peuvent être vues et manipulées avec des commandes génralement utilisées pour les fichiers (par exemple, ls(1), rm(1), etc.).
Le contenu de chaque fichier du répertoire consiste en une ligne unique d'information sur la file :
$ ls /dev/mqueue/mymq QSIZE:129 NOTIFY:2 SIGNO:0 NOTIFY_PID:8260 $ mount -t mqueue none /dev/mqueueCes champs sont les suivants :
Scrutation des descripteurs de file de messages | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
CONFORMITÉ | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
NOTES | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
EXEMPLE | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
VOIR AUSSI | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
TRADUCTION | Début | Précédent | Suivant | Sommaire | Préc.page.lue | Accueil |
Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 23 juillet 2006 et révisée le 6 juin 2008.
L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 7 mq_overview ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.
Sommaire | Début | Suivant | Sommaire | Préc.page.lue | Accueil |
Table des mots clés | Début | Suivant | Sommaire | Préc.page.lue | Accueil |
NOTIFY | Monter le système de fichiers des files de messages |
NOTIFY_PID | Monter le système de fichiers des files de messages |
QSIZE | Monter le système de fichiers des files de messages |
SIGNO | Monter le système de fichiers des files de messages |