Loading

NOM

       shm_overview - Panorama de la mémoire partagée POSIX

       L’API  de  mémoire  partagée  POSIX permet aux processus de communiquer
       entre eux en partageant une région de la mémoire.

       Les interfaces utilisées dans l’API sont :

       shm_open(3)    Créer et ouvrir un nouvel  objet,  ou  ouvrir  un  objet
                      existant.  Elle  est  analogue  à  open(2).  La fonction
                      renvoie un  descripteur  de  fichiers  qui  pourra  être
                      utilisé par les interfaces décrites ci-dessous.

       ftruncate(2)   Définir  la  taille  de l’objet en mémoire partagée. (Un
                      objet nouvellement créé en mémoire partagée a une taille
                      nulle.)

       mmap(2)        Projeter  l’objet  en  mémoire  partagée  dans  l’espace
                      d’adresses virtuel du processus appelant.

       munmap(2)      Déprojeter  l’objet  en  mémoire  partagée  de  l’espace
                      d’adresses virtuel du processus appelant.

       shm_unlink(3)  Supprimer le nom d’un objet en mémoire partagée.

       close(2)       Fermer le descripteur de fichier alloué avec shm_open(3)
                      lorsqu’on en a plus besoin.

       fstat(2)       Obtenir une structure stat décrivant l’objet en  mémoire
                      partagée.  Parmi  les  informations  renvoyées  par  cet
                      appel, on trouve la taille  de  l’objet  (st_size),  ses
                      permissions  (st_mode),  son propriétaire (st_uid) et le
                      groupe (st_gid) auquel il appartient.

       fchown(2)      Pour  modifier  l’appartenance  d’un  objet  en  mémoire
                      partagée.

       fchmod(2)      Pour  modifier  les  permissions  d’accès  d’un objet en
                      mémoire partagée.

   Versions
       La mémoire partagée POSIX est gérée depuis Linux 2.4 et la glibc 2.2.

   Persistance
       Les objets en mémoire partagée POSIX ont la persistance du  noyau :  un
       objet  en  mémoire  partagée  existera  jusqu’à  ce que le système soit
       éteint, ou bien jusqu’à ce que  tous  les  processus  aient  déprojetés
       l’objet et que celui-ci ait été supprimé avec shm_unlink(3).

   Édition des liens
       Les  programmes  utilisant  l’API  de  mémoire partagée POSIX doit être
       compilé avec cc -lrt pour le lier à la bibliothèque temps réel librt.

   Accéder aux objets en mémoire partagée par le système de fichiers
       Sous linux, les objets en mémoire partagée sont créés sur un système de
       fichiers  virtuel  (tmpfs),  généralement monté sur /dev/shm. Depuis le
       noyau 2.6.19, Linux gère l’utilisation des listes de  contrôle  d’accès
       (ACL)  pour  contrôler les permissions d’accès aux objets du système de
       fichiers virtuel.

CONFORMITÉ

       POSIX.1-2001.

NOTES

       Typiquement, les processus doivent synchroniser leur accès à  un  objet
       en mémoire partagée en utilisant, par exemple, les sémaphores POSIX.

       La  mémoire  partagée  System V  (shmget(2),  shmop(2),  etc.)  est une
       ancienne API  de  sémaphores.  La  mémoire  partagée  POSIX  offre  une
       interface  plus  simple  et  mieux conçue ; d’un autre coté, la mémoire
       partagée POSIX est moins  largement  disponible  (particulièrement  sur
       d’anciens systèmes) que la mémoire partagée System V.

VOIR AUSSI

       fchmod(2),  fchown(2),  fstat(2),  ftruncate(2),  mmap(2), mprotect(2),
       munmap(2),    shmget(2),    shmop(2),    shm_open(3),    shm_unlink(3),
       sem_overview(7)

COLOPHON

       Cette  page  fait  partie  de  la  publication 3.23 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler  des
       anomalies       peuvent       être       trouvées      à      l’adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Cette page de manuel a  été  traduite  par  Alain  Portal  <aportal  AT
       univ-montp2   DOT   fr>   en   2008,   et   mise   à   disposition  sur
       http://manpagesfr.free.fr/.

       Veuillez  signaler  toute  erreur   de   traduction   en   écrivant   à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de  ce  document
       en utilisant la commande « man -L C <section> <page_de_man> ».