Provided by: manpages-fr_4.15.0-9_all bug

NOM

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

DESCRIPTION

       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).

   Liaison
       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
       On Linux, shared memory objects are created in a (tmpfs(5))  virtual filesystem,  normally
       mounted  under  /dev/shm.  Since  kernel  2.6.19, Linux supports the use of access control
       lists (ACLs)  to control the permissions of objects in the virtual filesystem.

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 mémoire
       partagée. 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),  memfd_create(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 5.13 du projet man-pages Linux. Une description
       du projet et des instructions pour signaler des anomalies et la dernière version de  cette
       page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La  traduction  française  de  cette  page  de  manuel  a  été créée par Christophe Blaess
       <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <stephan.rafin@laposte.net>,  Thierry
       Vignaud  <tvignaud@mandriva.com>,  François Micaux, Alain Portal <aportal@univ-montp2.fr>,
       Jean-Philippe   Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)    <jean-
       luc.coulon@wanadoo.fr>,    Julien    Cristau    <jcristau@debian.org>,    Thomas   Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau  <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis
       Barbier <barbier@debian.org> et David Prévot <david@tilapin.org>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.