summaryrefslogtreecommitdiffstats
path: root/po/fr/man3/shm_open.3.po
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--po/fr/man3/shm_open.3.po1485
1 files changed, 1485 insertions, 0 deletions
diff --git a/po/fr/man3/shm_open.3.po b/po/fr/man3/shm_open.3.po
new file mode 100644
index 00000000..162cf4f0
--- /dev/null
+++ b/po/fr/man3/shm_open.3.po
@@ -0,0 +1,1485 @@
+# French translation of manpages
+# This file is distributed under the same license as the manpages-l10n package.
+# Copyright © of this file:
+# Christophe Blaess <https://www.blaess.fr/christophe/>, 1996-2003.
+# Stéphan Rafin <stephan.rafin@laposte.net>, 2002.
+# Thierry Vignaud <tvignaud@mandriva.com>, 1999,2002.
+# François Micaux, 2002.
+# Alain Portal <aportal@univ-montp2.fr>, 2003-2008.
+# Jean-Philippe Guérard <fevrier@tigreraye.org>, 2005-2006.
+# Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, 2006-2007.
+# Julien Cristau <jcristau@debian.org>, 2006-2007.
+# Thomas Huriaux <thomas.huriaux@gmail.com>, 2006-2008.
+# Nicolas François <nicolas.francois@centraliens.net>, 2006-2008.
+# Florentin Duneau <fduneau@gmail.com>, 2006-2010.
+# Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, 2006, 2012-2014.
+# Denis Barbier <barbier@debian.org>, 2006,2010.
+# David Prévot <david@tilapin.org>, 2010-2014.
+# Lucien Gentis <lucien.gentis@waika9.com>, 2022.
+msgid ""
+msgstr ""
+"Project-Id-Version: perkamon\n"
+"POT-Creation-Date: 2024-03-01 17:08+0100\n"
+"PO-Revision-Date: 2023-04-14 13:31+0200\n"
+"Last-Translator: Lucien Gentis <lucien.gentis@waika9.com>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Poedit 2.4.2\n"
+"X-Poedit-Bookmarks: 129,-1,-1,-1,-1,-1,-1,-1,-1,-1\n"
+
+#. type: TH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "shm_open"
+msgstr "shm_open"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "2023-10-31"
+msgstr "31 octobre 2023"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "Linux man-pages 6.06"
+msgstr "Pages du manuel de Linux 6.06"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NAME"
+msgstr "NOM"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"shm_open, shm_unlink - create/open or unlink POSIX shared memory objects"
+msgstr ""
+"shm_open, shm_unlink - Créer, ouvrir ou supprimer des objets en mémoire "
+"partagée POSIX"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "LIBRARY"
+msgstr "BIBLIOTHÈQUE"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Real-time library (I<librt>, I<-lrt>)"
+msgstr "Bibliothèque de temps réel (I<librt>, I<-lrt>)"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SYNOPSIS"
+msgstr "SYNOPSIS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"B<#include E<lt>sys/mman.hE<gt>>\n"
+"B<#include E<lt>sys/stat.hE<gt>> /* For mode constants */\n"
+"B<#include E<lt>fcntl.hE<gt>> /* For O_* constants */\n"
+msgstr ""
+"B<#include E<lt>sys/mman.hE<gt>>\n"
+"B<#include E<lt>sys/stat.hE<gt>> /* Pour les constantes de mode */\n"
+"B<#include E<lt>fcntl.hE<gt>> /* Pour les constantes O_* */\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"B<int shm_open(const char *>I<name>B<, int >I<oflag>B<, mode_t >I<mode>B<);>\n"
+"B<int shm_unlink(const char *>I<name>B<);>\n"
+msgstr ""
+"B<int shm_open(const char *>I<nom>B<, int >I<masque>B<, mode_t >I<mode>B<);>\n"
+"B<int shm_unlink(const char *>I<nom>B<);>\n"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "DESCRIPTION"
+msgstr "DESCRIPTION"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<shm_open>() creates and opens a new, or opens an existing, POSIX shared "
+"memory object. A POSIX shared memory object is in effect a handle which can "
+"be used by unrelated processes to B<mmap>(2) the same region of shared "
+"memory. The B<shm_unlink>() function performs the converse operation, "
+"removing an object previously created by B<shm_open>()."
+msgstr ""
+"La fonction B<shm_open>() crée et ouvre un nouvel objet en mémoire partagée "
+"POSIX, ou ouvre un objet existant. Il s'agit d'un descripteur utilisable par "
+"des processus indépendants pour projeter la même région mémoire à l'aide de "
+"B<mmap>(2). La fonction B<shm_unlink>() réalise l'opération inverse en "
+"supprimant l'objet créé précédemment par B<shm_open>()."
+
+#. glibc allows the initial slash to be omitted, and makes
+#. multiple initial slashes equivalent to a single slash.
+#. This differs from the implementation of POSIX message queues.
+#. glibc allows subdirectory components in the name, in which
+#. case the subdirectory must exist under /dev/shm, and allow the
+#. required permissions if a user wants to create a shared memory
+#. object in that subdirectory.
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The operation of B<shm_open>() is analogous to that of B<open>(2). I<name> "
+"specifies the shared memory object to be created or opened. For portable "
+"use, a shared memory object should be identified by a name of the form I</"
+"somename>; that is, a null-terminated string of up to B<NAME_MAX> (i.e., "
+"255) characters consisting of an initial slash, followed by one or more "
+"characters, none of which are slashes."
+msgstr ""
+"Le fonctionnement de B<shm_open>() est analogue à celui de B<open>(2). "
+"I<nom> indique l'objet en mémoire partagée à créer ou ouvrir. Pour un "
+"fonctionnement portable, un objet en mémoire partagée doit être identifié "
+"par un nom au format I</un_nom> ; c'est-à-dire une chaîne terminée par un "
+"octet de valeur zéro d'au plus B<NAME_MAX> (c'est-à-dire 255) caractères, et "
+"commençant par une barre oblique (« / ») suivie d'un caractère ou plus, ces "
+"derniers n'étant pas des barres obliques."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"I<oflag> is a bit mask created by ORing together exactly one of B<O_RDONLY> "
+"or B<O_RDWR> and any of the other flags listed here:"
+msgstr ""
+"I<masque> est un masque de bits associant à l'aide d'un OU logique une et "
+"une seule des deux constantes B<O_RDONLY> ou B<O_RDWR> et un ou plusieurs "
+"des attributs décrits ci-après :"
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<O_RDONLY>"
+msgstr "B<O_RDONLY>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Open the object for read access. A shared memory object opened in this way "
+"can be B<mmap>(2)ed only for read (B<PROT_READ>) access."
+msgstr ""
+"Ouvrir l'objet en lecture seule. Un tel objet ne pourra être projeté en "
+"mémoire avec B<mmap>(2) qu'avec un accès en lecture (B<PROT_READ>)."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<O_RDWR>"
+msgstr "B<O_RDWR>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Open the object for read-write access."
+msgstr "Ouvrir l'objet en lecture et écriture."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<O_CREAT>"
+msgstr "B<O_CREAT>"
+
+#. In truth it is actually the filesystem IDs on Linux, but these
+#. are nearly always the same as the effective IDs. (MTK, Jul 05)
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Create the shared memory object if it does not exist. The user and group "
+"ownership of the object are taken from the corresponding effective IDs of "
+"the calling process, and the object's permission bits are set according to "
+"the low-order 9 bits of I<mode>, except that those bits set in the process "
+"file mode creation mask (see B<umask>(2)) are cleared for the new object. "
+"A set of macro constants which can be used to define I<mode> is listed in "
+"B<open>(2). (Symbolic definitions of these constants can be obtained by "
+"including I<E<lt>sys/stat.hE<gt>>.)"
+msgstr ""
+"Créer l'objet en mémoire partagée s'il n'existe pas. L'utilisateur et le "
+"groupe propriétaires de l'objet proviennent des ID effectifs du processus "
+"appelant, et les bits de permission sont définis en fonction des 9\\ bits de "
+"poids faible de I<mode>, excepté que les bits qui sont définis dans le "
+"masque de mode de fichier pour la création du processus (consultez "
+"B<umask>(2)) sont effacés pour le nouvel objet. Un jeu de constantes de "
+"macroutilisables pour définir le I<mode> est décrit dans B<open>(2) (les "
+"définitions symboliques de ces constantes peuvent être obtenues en incluant "
+"I<E<lt>sys/stat.hE<gt>>)."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A new shared memory object initially has zero length\\[em]the size of the "
+"object can be set using B<ftruncate>(2). The newly allocated bytes of a "
+"shared memory object are automatically initialized to 0."
+msgstr ""
+"Un nouvel objet en mémoire partagée a une taille initiale nulle — elle peut "
+"être définie avec B<ftruncate>(2). Les octets d'un objet en mémoire partagée "
+"nouvellement créé sont automatiquement initialisés à zéro."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<O_EXCL>"
+msgstr "B<O_EXCL>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If B<O_CREAT> was also specified, and a shared memory object with the given "
+"I<name> already exists, return an error. The check for the existence of the "
+"object, and its creation if it does not exist, are performed atomically."
+msgstr ""
+"Si B<O_CREAT> était aussi précisé et si un objet en mémoire partagée avec le "
+"même I<nom> existait déjà, renvoyer une erreur. La vérification de "
+"l'existence de l'objet et sa création s'il n'existe pas sont réalisées de "
+"manière atomique."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<O_TRUNC>"
+msgstr "B<O_TRUNC>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "If the shared memory object already exists, truncate it to zero bytes."
+msgstr "Si l'objet en mémoire partagée existe déjà, tronquer sa taille à zéro."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Definitions of these flag values can be obtained by including I<E<lt>fcntl."
+"hE<gt>>."
+msgstr ""
+"Les définitions des valeurs de ces attributs peuvent être obtenues en "
+"incluant I<E<lt>fcntl.hE<gt>>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On successful completion B<shm_open>() returns a new file descriptor "
+"referring to the shared memory object. This file descriptor is guaranteed "
+"to be the lowest-numbered file descriptor not previously opened within the "
+"process. The B<FD_CLOEXEC> flag (see B<fcntl>(2)) is set for the file "
+"descriptor."
+msgstr ""
+"Si elle réussit, la fonction B<shm_open>() renvoie un nouveau descripteur de "
+"fichierréférençant l'objet en mémoire partagée. Ce descripteur sera le plus "
+"petit numéro disponible dans la table des descripteurs du processus. "
+"L'attribut B<FD_CLOEXEC> (consultez B<fcntl>(2)) sera activé pour le "
+"descripteur de fichier."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The file descriptor is normally used in subsequent calls to B<ftruncate>(2) "
+"(for a newly created object) and B<mmap>(2). After a call to B<mmap>(2) "
+"the file descriptor may be closed without affecting the memory mapping."
+msgstr ""
+"Le descripteur de fichier est utilisé normalement pour les appels ultérieurs "
+"à B<ftruncate>(2) (pour un objet nouvellement créé) et B<mmap>(2). Après un "
+"appel à B<mmap>(2) le descripteur peut être fermé sans affecter la "
+"projection mémoire."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The operation of B<shm_unlink>() is analogous to B<unlink>(2): it removes a "
+"shared memory object name, and, once all processes have unmapped the object, "
+"deallocates and destroys the contents of the associated memory region. "
+"After a successful B<shm_unlink>(), attempts to B<shm_open>() an object "
+"with the same I<name> fail (unless B<O_CREAT> was specified, in which case a "
+"new, distinct object is created)."
+msgstr ""
+"Le fonctionnement de B<shm_unlink>() est analogue à celui de "
+"B<unlink>(2)\\ : il supprime le nom d'un objet en mémoire partagée, et, une "
+"fois que tous les processus ont supprimé leur projection en mémoire, libère "
+"et détruit le contenu de la portion de mémoire associée. Après un appel "
+"réussi à B<shm_unlink>(), les tentatives d'appeler B<shm_open>() avec le "
+"même I<nom> échoueront (sauf si B<O_CREAT> est spécifié, auquel cas un "
+"nouvel objet distinct sera créé)."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr "VALEUR RENVOYÉE"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On success, B<shm_open>() returns a file descriptor (a nonnegative "
+"integer). On success, B<shm_unlink>() returns 0. On failure, both "
+"functions return -1 and set I<errno> to indicate the error."
+msgstr ""
+"Si elles réussissent, B<shm_open>() renvoie un descripteur de fichier (un "
+"entier non négatif) et B<shm_unlink>() renvoie  B<0>. En cas d'échec, les "
+"deux fonctions renvoient B<-1> et définissent I<errno> pour indiquer "
+"l'erreur."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ERRORS"
+msgstr "ERREURS"
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EACCES>"
+msgstr "B<EACCES>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Permission to B<shm_unlink>() the shared memory object was denied."
+msgstr ""
+"La permission d'utiliser B<shm_unlink>() sur l'objet en mémoire partagée a "
+"été refusée."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Permission was denied to B<shm_open>() I<name> in the specified I<mode>, or "
+"B<O_TRUNC> was specified and the caller does not have write permission on "
+"the object."
+msgstr ""
+"L'utilisation de B<shm_open>() pour ouvrir l'objet I<nom> dans le I<mode> "
+"spécifié a été refusée, ou B<O_TRUNC> a été spécifié et l'appelant n'a pas "
+"les permissions d'écriture sur l'objet."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EEXIST>"
+msgstr "B<EEXIST>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Both B<O_CREAT> and B<O_EXCL> were specified to B<shm_open>() and the "
+"shared memory object specified by I<name> already exists."
+msgstr ""
+"B<O_CREAT> et B<O_EXCL> ont été spécifiés dans B<shm_open>() et un objet de "
+"mémoire partagée du même I<nom> existe déjà."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EINVAL>"
+msgstr "B<EINVAL>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The I<name> argument to B<shm_open>() was invalid."
+msgstr "L'argument I<nom> de B<shm_open>() n'était pas valable."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EMFILE>"
+msgstr "B<EMFILE>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The per-process limit on the number of open file descriptors has been "
+"reached."
+msgstr ""
+"La limite du nombre de descripteurs de fichiers par processus a été atteinte."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENAMETOOLONG>"
+msgstr "B<ENAMETOOLONG>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The length of I<name> exceeds B<PATH_MAX>."
+msgstr "La longueur du I<nom> dépasse B<PATH_MAX>."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENFILE>"
+msgstr "B<ENFILE>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The system-wide limit on the total number of open files has been reached."
+msgstr ""
+"La limite du nombre total de fichiers ouverts pour le système entier a été "
+"atteinte."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENOENT>"
+msgstr "B<ENOENT>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"An attempt was made to B<shm_open>() a I<name> that did not exist, and "
+"B<O_CREAT> was not specified."
+msgstr ""
+"Tentative d'ouvrir avec B<shm_open>() un objet I<nom> qui n'existe pas, "
+"alors que l'attribut B<O_CREAT> n'a pas été spécifié."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"An attempt was to made to B<shm_unlink>() a I<name> that does not exist."
+msgstr ""
+"Tentative d'utiliser B<shm_unlink>() sur un objet I<nom> qui n'existe pas."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ATTRIBUTES"
+msgstr "ATTRIBUTS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For an explanation of the terms used in this section, see B<attributes>(7)."
+msgstr ""
+"Pour une explication des termes utilisés dans cette section, consulter "
+"B<attributes>(7)."
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Interface"
+msgstr "Interface"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Attribute"
+msgstr "Attribut"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Value"
+msgstr "Valeur"
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".na\n"
+msgstr ".na\n"
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".nh\n"
+msgstr ".nh\n"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"B<shm_open>(),\n"
+"B<shm_unlink>()"
+msgstr ""
+"B<shm_open>(),\n"
+"B<shm_unlink>()"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Thread safety"
+msgstr "Sécurité des threads"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "MT-Safe locale"
+msgstr "MT-Safe locale"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "VERSIONS"
+msgstr "VERSIONS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"POSIX leaves the behavior of the combination of B<O_RDONLY> and B<O_TRUNC> "
+"unspecified. On Linux, this will successfully truncate an existing shared "
+"memory object\\[em]this may not be so on other UNIX systems."
+msgstr ""
+"POSIX ne précise pas le comportement de la combinaison B<O_RDONLY> et "
+"B<O_TRUNC>. Sous Linux, la troncature aura lieu — cela n'est pas "
+"nécessairement le cas sous d'autres systèmes UNIX."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The POSIX shared memory object implementation on Linux makes use of a "
+"dedicated B<tmpfs>(5) filesystem that is normally mounted under I</dev/shm>."
+msgstr ""
+"L'implémentation sous Linux des objets de mémoire partagée POSIX utilise un "
+"système de fichiers B<tmpfs>(5) dédié, monté en principe sous I</dev/shm>."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "STANDARDS"
+msgstr "STANDARDS"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "POSIX.1-2008."
+msgstr "POSIX.1-2008."
+
+#. type: SH
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "HISTORY"
+msgstr "HISTORIQUE"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "glibc 2.2. POSIX.1-2001."
+msgstr "glibc 2.2. POSIX.1-2001."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"POSIX.1-2001 says that the group ownership of a newly created shared memory "
+"object is set to either the calling process's effective group ID or \"a "
+"system default group ID\". POSIX.1-2008 says that the group ownership may "
+"be set to either the calling process's effective group ID or, if the object "
+"is visible in the filesystem, the group ID of the parent directory."
+msgstr ""
+"POSIX.1-2001 indique que le groupe propriétaire d'un objet en mémoire "
+"partagée nouvellement créé utilise soit l'ID de groupe du processus "
+"appelant, soit un «\\ ID de groupe par défaut défini par le système\\ ». "
+"POSIX.1-2008 indique que le groupe propriétaire peut être défini soit avec "
+"l'ID de groupe du processus appelant, soit, si l'objet est visible dans le "
+"système de fichiers, avec l'ID de groupe du répertoire parent."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXAMPLES"
+msgstr "EXEMPLES"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The programs below employ POSIX shared memory and POSIX unnamed semaphores "
+"to exchange a piece of data. The \"bounce\" program (which must be run "
+"first) raises the case of a string that is placed into the shared memory by "
+"the \"send\" program. Once the data has been modified, the \"send\" program "
+"then prints the contents of the modified shared memory. An example "
+"execution of the two programs is the following:"
+msgstr ""
+"Les programmes ci-dessous utilisent la mémoire partagée POSIX et des "
+"sémaphores non nommés POSIX pour échanger des données. Le programme "
+"« bounce » (qui doit être exécuté en premier) illustre le cas d'une chaîne "
+"placée en mémoire partagée par le programme « send ». Lorsque les données "
+"ont été modifiées, le programme « send » affiche le contenu de la mémoire "
+"partagée modifié. Voici un exemple d'exécution des deux programmes :"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"$ B<./pshm_ucase_bounce /myshm &>\n"
+"[1] 270171\n"
+"$ B<./pshm_ucase_send /myshm hello>\n"
+"HELLO\n"
+msgstr ""
+"$ B<./pshm_ucase_bounce /myshm &>\n"
+"[1] 270171\n"
+"$ B<./pshm_ucase_send /myshm bonjour>\n"
+"BONJOUR\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Further detail about these programs is provided below."
+msgstr "Vous trouverez plus de détails à propos de ces programmes ci-dessous."
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Program source: pshm_ucase.h"
+msgstr "Source du programme : pshm_ucase.h"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The following header file is included by both programs below. Its primary "
+"purpose is to define a structure that will be imposed on the memory object "
+"that is shared between the two programs."
+msgstr ""
+"Ce fichier d'en-tête est inclus par les deux programmes ci-dessous. Sa "
+"principale fonction consiste à définir une structure qui sera imposée à "
+"l'objet en mémoire partagé entre les deux programmes."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"#include E<lt>fcntl.hE<gt>\n"
+"#include E<lt>semaphore.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>sys/mman.hE<gt>\n"
+"#include E<lt>sys/stat.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"\\&\n"
+"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
+" } while (0)\n"
+"\\&\n"
+"#define BUF_SIZE 1024 /* Maximum size for exchanged string */\n"
+"\\&\n"
+"/* Define a structure that will be imposed on the shared\n"
+" memory object */\n"
+"\\&\n"
+"struct shmbuf {\n"
+" sem_t sem1; /* POSIX unnamed semaphore */\n"
+" sem_t sem2; /* POSIX unnamed semaphore */\n"
+" size_t cnt; /* Number of bytes used in \\[aq]buf\\[aq] */\n"
+" char buf[BUF_SIZE]; /* Data being transferred */\n"
+"};\n"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Program source: pshm_ucase_bounce.c"
+msgstr "Source programme : pshm_ucase_bounce.c"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The \"bounce\" program creates a new shared memory object with the name "
+"given in its command-line argument and sizes the object to match the size of "
+"the I<shmbuf> structure defined in the header file. It then maps the object "
+"into the process's address space, and initializes two POSIX semaphores "
+"inside the object to 0."
+msgstr ""
+"Le programme « bounce » crée un nouvel objet en mémoire partagée avec le nom "
+"spécifié comme argument de la ligne de commande et le dimensionne de manière "
+"à correspondre à la taille de la structure I<shmbuf> définie dans le fichier "
+"d'en-tête. Il projette ensuite l'objet dans l'espace d'adressage du "
+"processus et initialise deux sémaphores POSIX à B<0> à l'intérieur de "
+"l'objet."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"After the \"send\" program has posted the first of the semaphores, the "
+"\"bounce\" program upper cases the data that has been placed in the memory "
+"by the \"send\" program and then posts the second semaphore to tell the "
+"\"send\" program that it may now access the shared memory."
+msgstr ""
+"Une fois le premier sémaphore posté par le programme « send », le programme "
+"« bounce » met en capitales les données placées en mémoire par le programme "
+"« send », puis poste le second sémaphore pour indiquer au programme « send » "
+"qu'il peut maintenant accéder à la mémoire partagée."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"/* pshm_ucase_bounce.c\n"
+"\\&\n"
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>ctype.hE<gt>\n"
+"\\&\n"
+"#include \"pshm_ucase.h\"\n"
+"\\&\n"
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int fd;\n"
+" char *shmpath;\n"
+" struct shmbuf *shmp;\n"
+"\\&\n"
+" if (argc != 2) {\n"
+" fprintf(stderr, \"Usage: %s /shm-path\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+"\\&\n"
+" shmpath = argv[1];\n"
+"\\&\n"
+" /* Create shared memory object and set its size to the size\n"
+" of our structure. */\n"
+"\\&\n"
+" fd = shm_open(shmpath, O_CREAT | O_EXCL | O_RDWR, 0600);\n"
+" if (fd == -1)\n"
+" errExit(\"shm_open\");\n"
+"\\&\n"
+" if (ftruncate(fd, sizeof(struct shmbuf)) == -1)\n"
+" errExit(\"ftruncate\");\n"
+"\\&\n"
+" /* Map the object into the caller\\[aq]s address space. */\n"
+"\\&\n"
+" shmp = mmap(NULL, sizeof(*shmp), PROT_READ | PROT_WRITE,\n"
+" MAP_SHARED, fd, 0);\n"
+" if (shmp == MAP_FAILED)\n"
+" errExit(\"mmap\");\n"
+"\\&\n"
+" /* Initialize semaphores as process-shared, with value 0. */\n"
+"\\&\n"
+" if (sem_init(&shmp-E<gt>sem1, 1, 0) == -1)\n"
+" errExit(\"sem_init-sem1\");\n"
+" if (sem_init(&shmp-E<gt>sem2, 1, 0) == -1)\n"
+" errExit(\"sem_init-sem2\");\n"
+"\\&\n"
+" /* Wait for \\[aq]sem1\\[aq] to be posted by peer before touching\n"
+" shared memory. */\n"
+"\\&\n"
+" if (sem_wait(&shmp-E<gt>sem1) == -1)\n"
+" errExit(\"sem_wait\");\n"
+"\\&\n"
+" /* Convert data in shared memory into upper case. */\n"
+"\\&\n"
+" for (size_t j = 0; j E<lt> shmp-E<gt>cnt; j++)\n"
+" shmp-E<gt>buf[j] = toupper((unsigned char) shmp-E<gt>buf[j]);\n"
+"\\&\n"
+" /* Post \\[aq]sem2\\[aq] to tell the peer that it can now\n"
+" access the modified data in shared memory. */\n"
+"\\&\n"
+" if (sem_post(&shmp-E<gt>sem2) == -1)\n"
+" errExit(\"sem_post\");\n"
+"\\&\n"
+" /* Unlink the shared memory object. Even if the peer process\n"
+" is still using the object, this is okay. The object will\n"
+" be removed only after all open references are closed. */\n"
+"\\&\n"
+" shm_unlink(shmpath);\n"
+"\\&\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Program source: pshm_ucase_send.c"
+msgstr "Source du programme : pshm_ucase_send.c"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The \"send\" program takes two command-line arguments: the pathname of a "
+"shared memory object previously created by the \"bounce\" program and a "
+"string that is to be copied into that object."
+msgstr ""
+"Le programme « send » accepte deux arguments de ligne de commande : le nom "
+"d'un objet en mémoire partagée préalablement créé par le programme "
+"« bounce » et une chaîne à copier dans cet objet."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The program opens the shared memory object and maps the object into its "
+"address space. It then copies the data specified in its second argument "
+"into the shared memory, and posts the first semaphore, which tells the "
+"\"bounce\" program that it can now access that data. After the \"bounce\" "
+"program posts the second semaphore, the \"send\" program prints the contents "
+"of the shared memory on standard output."
+msgstr ""
+"Le programme ouvre l'objet en mémoire partagée et le projette dans son "
+"espace d'adressage. Ensuite, il copie les données spécifiées à l'aide du "
+"second argument vers la mémoire partagée et poste le premier sémaphore pour "
+"informer le programme « bounce » qu'il peut maintenant accéder aux données. "
+"Lorsque le programme « bounce » a posté le second sémaphore, le programme "
+"« send » affiche le contenu de la mémoire partagée sur la sortie standard."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"/* pshm_ucase_send.c\n"
+"\\&\n"
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>string.hE<gt>\n"
+"\\&\n"
+"#include \"pshm_ucase.h\"\n"
+"\\&\n"
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int fd;\n"
+" char *shmpath, *string;\n"
+" size_t len;\n"
+" struct shmbuf *shmp;\n"
+"\\&\n"
+" if (argc != 3) {\n"
+" fprintf(stderr, \"Usage: %s /shm-path string\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+"\\&\n"
+" shmpath = argv[1];\n"
+" string = argv[2];\n"
+" len = strlen(string);\n"
+"\\&\n"
+" if (len E<gt> BUF_SIZE) {\n"
+" fprintf(stderr, \"String is too long\\en\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+"\\&\n"
+" /* Open the existing shared memory object and map it\n"
+" into the caller\\[aq]s address space. */\n"
+"\\&\n"
+" fd = shm_open(shmpath, O_RDWR, 0);\n"
+" if (fd == -1)\n"
+" errExit(\"shm_open\");\n"
+"\\&\n"
+" shmp = mmap(NULL, sizeof(*shmp), PROT_READ | PROT_WRITE,\n"
+" MAP_SHARED, fd, 0);\n"
+" if (shmp == MAP_FAILED)\n"
+" errExit(\"mmap\");\n"
+"\\&\n"
+" /* Copy data into the shared memory object. */\n"
+"\\&\n"
+" shmp-E<gt>cnt = len;\n"
+" memcpy(&shmp-E<gt>buf, string, len);\n"
+"\\&\n"
+" /* Tell peer that it can now access shared memory. */\n"
+"\\&\n"
+" if (sem_post(&shmp-E<gt>sem1) == -1)\n"
+" errExit(\"sem_post\");\n"
+"\\&\n"
+" /* Wait until peer says that it has finished accessing\n"
+" the shared memory. */\n"
+"\\&\n"
+" if (sem_wait(&shmp-E<gt>sem2) == -1)\n"
+" errExit(\"sem_wait\");\n"
+"\\&\n"
+" /* Write modified data in shared memory to standard output. */\n"
+"\\&\n"
+" write(STDOUT_FILENO, &shmp-E<gt>buf, len);\n"
+" write(STDOUT_FILENO, \"\\en\", 1);\n"
+"\\&\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SEE ALSO"
+msgstr "VOIR AUSSI"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<close>(2), B<fchmod>(2), B<fchown>(2), B<fcntl>(2), B<fstat>(2), "
+"B<ftruncate>(2), B<memfd_create>(2), B<mmap>(2), B<open>(2), B<umask>(2), "
+"B<shm_overview>(7)"
+msgstr ""
+"B<close>(2), B<fchmod>(2), B<fchown>(2), B<fcntl>(2), B<fstat>(2), "
+"B<ftruncate>(2), B<memfd_create>(2), B<mmap>(2), B<open>(2), B<umask>(2), "
+"B<shm_overview>(7)"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "2023-02-05"
+msgstr "5 février 2023"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "Linux man-pages 6.03"
+msgstr "Pages du manuel de Linux 6.03"
+
+#. type: Plain text
+#: debian-bookworm
+msgid "These functions are provided in glibc 2.2 and later."
+msgstr "Ces fonctions sont fournies depuis la glibc 2.2."
+
+#. type: Plain text
+#: debian-bookworm
+msgid "POSIX.1-2001, POSIX.1-2008."
+msgstr "POSIX.1-2001, POSIX.1-2008."
+
+#. type: SH
+#: debian-bookworm
+#, no-wrap
+msgid "NOTES"
+msgstr "NOTES"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#include E<lt>fcntl.hE<gt>\n"
+"#include E<lt>semaphore.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>sys/mman.hE<gt>\n"
+"#include E<lt>sys/stat.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+msgstr ""
+"#include E<lt>fcntl.hE<gt>\n"
+"#include E<lt>semaphore.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>sys/mman.hE<gt>\n"
+"#include E<lt>sys/stat.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
+" } while (0)\n"
+msgstr ""
+"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
+" } while (0)\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "#define BUF_SIZE 1024 /* Maximum size for exchanged string */\n"
+msgstr "#define BUF_SIZE 1024 /* Taille maximale de la chaîne échangée */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"/* Define a structure that will be imposed on the shared\n"
+" memory object */\n"
+msgstr ""
+"/* Définir une structure qui sera imposée à l'objet\n"
+" en mémoire partagée */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"struct shmbuf {\n"
+" sem_t sem1; /* POSIX unnamed semaphore */\n"
+" sem_t sem2; /* POSIX unnamed semaphore */\n"
+" size_t cnt; /* Number of bytes used in \\[aq]buf\\[aq] */\n"
+" char buf[BUF_SIZE]; /* Data being transferred */\n"
+"};\n"
+msgstr ""
+"struct shmbuf {\n"
+" sem_t sem1; /* Sémaphore POSIX non nommé */\n"
+" sem_t sem2; /* Sémaphore POSIX non nommé */\n"
+" size_t cnt; /* Nombre d'octets utilisés dans \\[aq]buf\\[aq] */\n"
+" char buf[BUF_SIZE]; /* Données en cours de transfert */\n"
+"};\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "/* pshm_ucase_bounce.c\n"
+msgstr "/* pshm_ucase_bounce.c\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>ctype.hE<gt>\n"
+msgstr ""
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>ctype.hE<gt>\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "#include \"pshm_ucase.h\"\n"
+msgstr "#include \"pshm_ucase.h\"\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int fd;\n"
+" char *shmpath;\n"
+" struct shmbuf *shmp;\n"
+msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int fd;\n"
+" char *shmpath;\n"
+" struct shmbuf *shmp;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (argc != 2) {\n"
+" fprintf(stderr, \"Usage: %s /shm-path\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" if (argc != 2) {\n"
+" fprintf(stderr, \"Usage: %s /shm-path\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " shmpath = argv[1];\n"
+msgstr " shmpath = argv[1];\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Create shared memory object and set its size to the size\n"
+" of our structure. */\n"
+msgstr ""
+" /* Créer l'objet en mémoire partagée et le dimensionner\n"
+" à la taille de notre structure. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" fd = shm_open(shmpath, O_CREAT | O_EXCL | O_RDWR, 0600);\n"
+" if (fd == -1)\n"
+" errExit(\"shm_open\");\n"
+msgstr ""
+" fd = shm_open(shmpath, O_CREAT | O_EXCL | O_RDWR, 0600);\n"
+" if (fd == -1)\n"
+" errExit(\"shm_open\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (ftruncate(fd, sizeof(struct shmbuf)) == -1)\n"
+" errExit(\"ftruncate\");\n"
+msgstr ""
+" if (ftruncate(fd, sizeof(struct shmbuf)) == -1)\n"
+" errExit(\"ftruncate\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Map the object into the caller\\[aq]s address space. */\n"
+msgstr " /* Projeter l'objet dans l'espace d'adressage de l'appelant. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" shmp = mmap(NULL, sizeof(*shmp), PROT_READ | PROT_WRITE,\n"
+" MAP_SHARED, fd, 0);\n"
+" if (shmp == MAP_FAILED)\n"
+" errExit(\"mmap\");\n"
+msgstr ""
+" shmp = mmap(NULL, sizeof(*shmp), PROT_READ | PROT_WRITE,\n"
+" MAP_SHARED, fd, 0);\n"
+" if (shmp == MAP_FAILED)\n"
+" errExit(\"mmap\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Initialize semaphores as process-shared, with value 0. */\n"
+msgstr ""
+" /* Initialiser les sémaphores comme partagés entre processus avec\n"
+" la valeur B<0>. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (sem_init(&shmp-E<gt>sem1, 1, 0) == -1)\n"
+" errExit(\"sem_init-sem1\");\n"
+" if (sem_init(&shmp-E<gt>sem2, 1, 0) == -1)\n"
+" errExit(\"sem_init-sem2\");\n"
+msgstr ""
+" if (sem_init(&shmp-E<gt>sem1, 1, 0) == -1)\n"
+" errExit(\"sem_init-sem1\");\n"
+" if (sem_init(&shmp-E<gt>sem2, 1, 0) == -1)\n"
+" errExit(\"sem_init-sem2\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Wait for \\[aq]sem1\\[aq] to be posted by peer before touching\n"
+" shared memory. */\n"
+msgstr ""
+" /* Attendre que \\[aq]sem1\\[aq] ait été posté par le processus pair\n"
+" avant de toucher à la mémoire partagée. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (sem_wait(&shmp-E<gt>sem1) == -1)\n"
+" errExit(\"sem_wait\");\n"
+msgstr ""
+" if (sem_wait(&shmp-E<gt>sem1) == -1)\n"
+" errExit(\"sem_wait\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Convert data in shared memory into upper case. */\n"
+msgstr " /* Convertir en capitales les données en mémoire partagée. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" for (size_t j = 0; j E<lt> shmp-E<gt>cnt; j++)\n"
+" shmp-E<gt>buf[j] = toupper((unsigned char) shmp-E<gt>buf[j]);\n"
+msgstr ""
+" for (size_t j = 0; j E<lt> shmp-E<gt>cnt; j++)\n"
+" shmp-E<gt>buf[j] = toupper((unsigned char) shmp-E<gt>buf[j]);\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Post \\[aq]sem2\\[aq] to tell the peer that it can now\n"
+" access the modified data in shared memory. */\n"
+msgstr ""
+" /* Poster \\[aq]sem2\\[aq] pour informer le processus pair qu'il peut \n"
+" dorénavant accéder aux données modifiées en mémoire partagée. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (sem_post(&shmp-E<gt>sem2) == -1)\n"
+" errExit(\"sem_post\");\n"
+msgstr ""
+" if (sem_post(&shmp-E<gt>sem2) == -1)\n"
+" errExit(\"sem_post\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Unlink the shared memory object. Even if the peer process\n"
+" is still using the object, this is okay. The object will\n"
+" be removed only after all open references are closed. */\n"
+msgstr ""
+" /* Supprimer le lien avec l'objet en mémoire partagée. Cela ne posera\n"
+" pas de problème, même si le processus pair utilise encore l'objet,\n"
+" car ce dernier ne sera supprimé que lorsque tous les liens ouverts\n"
+" qui y font référence auront été fermés. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " shm_unlink(shmpath);\n"
+msgstr " shm_unlink(shmpath);\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "/* pshm_ucase_send.c\n"
+msgstr "/* pshm_ucase_send.c\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>string.hE<gt>\n"
+msgstr ""
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>string.hE<gt>\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int fd;\n"
+" char *shmpath, *string;\n"
+" size_t len;\n"
+" struct shmbuf *shmp;\n"
+msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int fd;\n"
+" char *shmpath, *string;\n"
+" size_t len;\n"
+" struct shmbuf *shmp;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (argc != 3) {\n"
+" fprintf(stderr, \"Usage: %s /shm-path string\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" if (argc != 3) {\n"
+" fprintf(stderr, \"Usage: %s /shm-path string\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" shmpath = argv[1];\n"
+" string = argv[2];\n"
+" len = strlen(string);\n"
+msgstr ""
+" shmpath = argv[1];\n"
+" string = argv[2];\n"
+" len = strlen(string);\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (len E<gt> BUF_SIZE) {\n"
+" fprintf(stderr, \"String is too long\\en\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" if (len E<gt> BUF_SIZE) {\n"
+" fprintf(stderr, \"La chaîne est trop longue\\en\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Open the existing shared memory object and map it\n"
+" into the caller\\[aq]s address space. */\n"
+msgstr ""
+" /* Ouvrir l'objet en mémoire partagée existant et le projeter\n"
+" dans l'espace d'adressage de l'appelant. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" fd = shm_open(shmpath, O_RDWR, 0);\n"
+" if (fd == -1)\n"
+" errExit(\"shm_open\");\n"
+msgstr ""
+" fd = shm_open(shmpath, O_RDWR, 0);\n"
+" if (fd == -1)\n"
+" errExit(\"shm_open\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Copy data into the shared memory object. */\n"
+msgstr " /* Copier les données dans l'objet en mémoire partagée. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" shmp-E<gt>cnt = len;\n"
+" memcpy(&shmp-E<gt>buf, string, len);\n"
+msgstr ""
+" shmp-E<gt>cnt = len;\n"
+" memcpy(&shmp-E<gt>buf, string, len);\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Tell peer that it can now access shared memory. */\n"
+msgstr ""
+" /* Informer le processus pair qu'il peut maintenant accéder à\n"
+" la mémoire partagée. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (sem_post(&shmp-E<gt>sem1) == -1)\n"
+" errExit(\"sem_post\");\n"
+msgstr ""
+" if (sem_post(&shmp-E<gt>sem1) == -1)\n"
+" errExit(\"sem_post\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Wait until peer says that it has finished accessing\n"
+" the shared memory. */\n"
+msgstr ""
+" /* Attendre que le processus pair indique qu'il a fini d'accéder\n"
+" à la mémoire partagée. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (sem_wait(&shmp-E<gt>sem2) == -1)\n"
+" errExit(\"sem_wait\");\n"
+msgstr ""
+" if (sem_wait(&shmp-E<gt>sem2) == -1)\n"
+" errExit(\"sem_wait\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Write modified data in shared memory to standard output. */\n"
+msgstr ""
+" /* Afficher les données qui ont été modifiées en mémoire partagée \n"
+" sur la sortie standard. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" write(STDOUT_FILENO, &shmp-E<gt>buf, len);\n"
+" write(STDOUT_FILENO, \"\\en\", 1);\n"
+msgstr ""
+" write(STDOUT_FILENO, &shmp-E<gt>buf, len);\n"
+" write(STDOUT_FILENO, \"\\en\", 1);\n"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-07-20"
+msgstr "20 juillet 2023"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "Linux man-pages 6.05.01"
+msgstr "Pages du manuel de Linux 6.05.01"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "2023-03-30"
+msgstr "30 mars 2023"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "Linux man-pages 6.04"
+msgstr "Pages du manuel de Linux 6.04"