diff options
Diffstat (limited to '')
-rw-r--r-- | po/fr/man3/shm_open.3.po | 1485 |
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" |