# French translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Christophe Blaess , 1996-2003. # Stéphan Rafin , 2002. # Thierry Vignaud , 1999, 2002. # François Micaux, 2002. # Alain Portal , 2003-2008. # Jean-Philippe Guérard , 2005-2006. # Jean-Luc Coulon (f5ibh) , 2006-2007. # Julien Cristau , 2006-2007. # Thomas Huriaux , 2006-2008. # Nicolas François , 2006-2008. # Florentin Duneau , 2006-2010. # Simon Paillard , 2006. # Denis Barbier , 2006, 2010. # David Prévot , 2010, 2012, 2013. # Cédric Boutillier , 2011, 2012. # Frédéric Hantrais , 2013, 2014. # Jean-Philippe MENGUAL , 2020-2024. msgid "" msgstr "" "Project-Id-Version: manpages-l10n 4.22.0\n" "POT-Creation-Date: 2024-06-01 05:45+0200\n" "PO-Revision-Date: 2024-04-17 14:20+0200\n" "Last-Translator: Jean-Philippe MENGUAL \n" "Language-Team: French \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: Lokalize 22.12.3\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "clone" msgstr "clone" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 mai 2024" #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" msgstr "Pages du manuel de Linux 6.8" #. 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 "clone, __clone2, clone3 - create a child process" msgstr "clone, __clone2, clone3 - Créer un processus enfant (child)" #. 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 "Standard C library (I, I<-lc>)" msgstr "Bibliothèque C standard (I, I<-lc>)" #. 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 "/* Prototype for the glibc wrapper function */\n" msgstr "/* Prototype de la fonction enveloppe de la glibc */\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<#define _GNU_SOURCE>\n" "B<#include Esched.hE>\n" msgstr "" "B<#define _GNU_SOURCE>\n" "B<#include Esched.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<)(void *_Nullable), void *>IB<, int >IB<,>\n" "B< void *_Nullable >IB<, ...>I< >/*B< pid_t *_Nullable >IB<,>\n" "B< void *_Nullable >IB<,>\n" "B< pid_t *_Nullable >IB< >*/B< );>\n" msgstr "" "BIB<)(void *_Nullable), void *>IB<, int >IB<,>\n" "B< void *_Nullable >IB<, ...>I< >/*B< pid_t *_Nullable >IB<,>\n" "B< void *_Nullable >IB<,>\n" "B< pid_t *_Nullable >IB< >*/B< );>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "/* For the prototype of the raw clone() system call, see NOTES */\n" msgstr "/* Pour le prototype de l'appel système clone() brut, voir REMARQUES */\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<#include Elinux/sched.hE> /* Definition of B */\n" "B<#include Esched.hE> /* Definition of B constants */\n" "B<#include Esys/syscall.hE> /* Definition of B constants */\n" "B<#include Eunistd.hE>\n" msgstr "" "B<#include Elinux/sched.hE> /* Définition de B */\n" "B<#include Esched.hE> /* Définition des constantes B */\n" "B<#include Esys/syscall.hE> /* Définition des constantes B */\n" "B<#include Eunistd.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<, size_t >IB<);>\n" msgstr "BIB<, size_t >IB<);>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "I: glibc provides no wrapper for B(), necessitating the use of " "B(2)." msgstr "" "I : La glibc ne fournit pas d'enveloppe pour B() ; appelez-" "la en utilisant B(2)." #. 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 "" "These system calls create a new (\"child\") process, in a manner similar to " "B(2)." msgstr "" "Ces appels système créent un nouveau processus « enfant », de façon analogue " "à B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "By contrast with B(2), these system calls provide more precise control " "over what pieces of execution context are shared between the calling process " "and the child process. For example, using these system calls, the caller " "can control whether or not the two processes share the virtual address " "space, the table of file descriptors, and the table of signal handlers. " "These system calls also allow the new child process to be placed in separate " "B(7)." msgstr "" "Contrairement à B(2), ces appels système offrent un contrôle plus " "précis du contexte d'exécution partagé entre le processus appelant et son " "enfant. Par exemple, en utilisant ces appels système, l'appelant peut " "contrôler si les deux processus partagent ou non l'espace d'adresse virtuel, " "la table des descripteurs de fichier et celle des gestionnaires de signal. " "Ces appels système permettent également au nouveau processus enfant d'aller " "dans un B(7) à part." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that in this manual page, \"calling process\" normally corresponds to " "\"parent process\". But see the descriptions of B and " "B below." msgstr "" "Remarquez que dans cette page de manuel, le « processus appelant » " "correspond en principe au « processus parent ». Mais voir les descriptions " "de B et de B ci-dessous." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This page describes the following interfaces:" msgstr "Cette page décrit les interfaces suivantes :" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "\\[bu]" msgstr "-" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The glibc B() wrapper function and the underlying system call on " "which it is based. The main text describes the wrapper function; the " "differences for the raw system call are described toward the end of this " "page." msgstr "" "Cette page présente à la fois la fonction enveloppe B() de la glibc " "et l'appel système sous-jacent sur lequel elle s'appuie. Le texte principal " "décrit la fonction enveloppe ; les différences avec l'appel système brut " "sont précisées vers la fin de cette page." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The newer B() system call." msgstr "Le nouvel appel système B()." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "In the remainder of this page, the terminology \"the clone call\" is used " "when noting details that apply to all of these interfaces." msgstr "" "Dans la suite de cette page, le terme « appel clone » est utilisé pour " "évoquer les détails applicables à toutes ces interfaces." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "The clone() wrapper function" msgstr "La fonction enveloppe clone()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the child process is created with the B() wrapper function, it " "commences execution by calling the function pointed to by the argument " "I. (This differs from B(2), where execution continues in the " "child from the point of the B(2) call.) The I argument is " "passed as the argument of the function I." msgstr "" "Quand le processus enfant est créé par la fonction enveloppe B(), il " "débute son exécution par un appel à la fonction vers laquelle pointe " "l'argument I (cela est différent de B(2), pour lequel l'exécution " "continue dans le processus enfant à partir du moment de l'appel de " "B(2)). L'argument I est passé comme argument de la fonction I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the I(I) function returns, the child process terminates. The " "integer returned by I is the exit status for the child process. The " "child process may also terminate explicitly by calling B(2) or after " "receiving a fatal signal." msgstr "" "Quand la fonction I(I) renvoie, le processus enfant se termine. La " "valeur entière renvoyée par I est utilisée comme code de retour du " "processus enfant. Ce dernier peut également se terminer de manière explicite " "en invoquant la fonction B(2) ou après la réception d'un signal fatal." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument specifies the location of the stack used by the child " "process. Since the child and calling process may share memory, it is not " "possible for the child process to execute in the same stack as the calling " "process. The calling process must therefore set up memory space for the " "child stack and pass a pointer to this space to B(). Stacks grow " "downward on all processors that run Linux (except the HP PA processors), so " "I usually points to the topmost address of the memory space set up " "for the child stack. Note that B() does not provide a means whereby " "the caller can inform the kernel of the size of the stack area." msgstr "" "L'argument I indique l'emplacement de la pile utilisée par le " "processus enfant. Comme les processus enfant et appelant peuvent partager de " "la mémoire, il n'est généralement pas possible pour l'enfant d'utiliser la " "même pile que son parent. Le processus appelant doit donc préparer un espace " "mémoire pour stocker la pile de son enfant, et transmettre à B un " "pointeur sur cet emplacement. Les piles croissent vers le bas sur tous les " "processeurs implémentant Linux (sauf le HP PA), donc I doit pointer " "sur la plus haute adresse de l'espace mémoire prévu pour la pile du " "processus enfant. Remarquez que B() ne fournit aucun moyen pour que " "l'appelant puisse informer le noyau de la taille de la zone de la pile." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The remaining arguments to B() are discussed below." msgstr "Les paramètres restants de B() sont décrits ci-dessous." #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "clone3()" msgstr "clone3()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() system call provides a superset of the functionality of the " "older B() interface. It also provides a number of API improvements, " "including: space for additional flags bits; cleaner separation in the use of " "various arguments; and the ability to specify the size of the child's stack " "area." msgstr "" "L'appel système B() fournit un sur-ensemble de la fonctionnalité de " "l'ancienne interface de B(). Il offre également un certain nombre " "d'améliorations de l'API dont : un espace pour des bits d'attributs " "supplémentaires, une séparation plus propre dans l'utilisation de plusieurs " "paramètres et la possibilité d'indiquer la taille de la zone de la pile de " "l'enfant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "As with B(2), B() returns in both the parent and the child. " "It returns 0 in the child process and returns the PID of the child in the " "parent." msgstr "" "Comme avec B(2), B() renvoie à la fois au parent et à " "l'enfant. Il renvoie B<0> dans le processus enfant et il renvoie le PID de " "l'enfant dans le parent." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument of B() is a structure of the following form:" msgstr "" "Le paramètre I de B() est une structure ayant la forme " "suivante :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "struct clone_args {\n" " u64 flags; /* Flags bit mask */\n" " u64 pidfd; /* Where to store PID file descriptor\n" " (I) */\n" " u64 child_tid; /* Where to store child TID,\n" " in child\\[aq]s memory (I) */\n" " u64 parent_tid; /* Where to store child TID,\n" " in parent\\[aq]s memory (I) */\n" " u64 exit_signal; /* Signal to deliver to parent on\n" " child termination */\n" " u64 stack; /* Pointer to lowest byte of stack */\n" " u64 stack_size; /* Size of stack */\n" " u64 tls; /* Location of new TLS */\n" " u64 set_tid; /* Pointer to a I array\n" " (since Linux 5.5) */\n" " u64 set_tid_size; /* Number of elements in I\n" " (since Linux 5.5) */\n" " u64 cgroup; /* File descriptor for target cgroup\n" " of child (since Linux 5.7) */\n" "};\n" msgstr "" "struct clone_args {\n" " u64 flags; /* Masque de bit d'attribut */\n" " u64 pidfd; /* Où stocker le descripteur de fichier du PID\n" " (I) */\n" " u64 child_tid; /* Où stocker le TID enfant,\n" " dans la mémoire de l'enfant (I) */\n" " u64 parent_tid; /* Où stocker le TID enfant,\n" " dans la mémoire du parent (I) */\n" " u64 exit_signal; /* Signal à envoyer au parent quand\n" " l'enfant se termine */\n" " u64 stack; /* Pointeur vers l'octet le plus faible de la pile */\n" " u64 stack_size; /* Taille de la pile */\n" " u64 tls; /* Emplacement du nouveau TLS */\n" " u64 set_tid; /* Pointeur vers un tableau I\n" " (depuis Linux 5.5) */\n" " u64 set_tid_size; /* Nombre d'éléments dans I\n" " (depuis Linux 5.5) */\n" " u64 cgroup; /* Descripteur de fichier du cgroup cible\n" " de l'enfant (depuis Linux 5.7) */\n" "};\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument that is supplied to B() should be initialized " "to the size of this structure. (The existence of the I argument " "permits future extensions to the I structure.)" msgstr "" "Le paramètre I fourni à B() doit être initialisé à la taille " "de cette structure (l'existence du paramètre I autorise des extensions " "futures de la structure I)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The stack for the child process is specified via I, which " "points to the lowest byte of the stack area, and I, " "which specifies the size of the stack in bytes. In the case where the " "B flag (see below) is specified, a stack must be explicitly " "allocated and specified. Otherwise, these two fields can be specified as " "NULL and 0, which causes the child to use the same stack area as the parent " "(in the child's own virtual address space)." msgstr "" "La pile du processus enfant est indiquée avec I, qui pointe " "vers l'octet le plus faible de la zone de la pile, et avec I, qui indique la taille de la pile en octets. Si l'attribut " "B est indiqué (voir ci-dessous), une pile doit être explicitement " "allouée et indiquée. Sinon, ces deux champs peuvent valoir NULL et B<0>, ce " "qui amène l'enfant à utiliser la même zone de pile que son parent (dans " "l'espace d'adressage virtuel de son propre enfant)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The remaining fields in the I argument are discussed below." msgstr "Les autres champs du paramètre I sont abordés ci-dessous." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Equivalence between clone() and clone3() arguments" msgstr "Équivalence entre les paramètres de clone() et de clone3()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Unlike the older B() interface, where arguments are passed " "individually, in the newer B() interface the arguments are packaged " "into the I structure shown above. This structure allows for a " "superset of the information passed via the B() arguments." msgstr "" "Contrairement à l'ancienne interface B(), où les paramètres sont " "passés individuellement, ceux de la nouvelle interface B() sont " "empaquetés dans la structure I présentée ci-dessus. Cette " "structure permet de passer un ensemble d'informations à l’aide des arguments " "de B()." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following table shows the equivalence between the arguments of " "B() and the fields in the I argument supplied to " "B():" msgstr "" "Le tableau suivant montre l'équivalence entre les paramètres de B() " "et les champs du paramètre I fournis à B() :" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "clone()" msgstr "clone()" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Notes" msgstr "Notes" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I field" msgstr "Champ I" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "flags & \\[ti]0xff" msgstr "attributs & \\[ti]0xff" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "flags" msgstr "attributs" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "For most flags; details below" msgstr "Pour la plupart des attributs, détails ci-dessous" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "parent_tid" msgstr "parent_tid" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "pidfd" msgstr "pidfd" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "See CLONE_PIDFD" msgstr "Voir CLONE_PIDFD" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "child_tid" msgstr "child_tid" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "See CLONE_CHILD_SETTID" msgstr "Voir CLONE_CHILD_SETTID" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "See CLONE_PARENT_SETTID" msgstr "Voir CLONE_PARENT_SETTID" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "flags & 0xff" msgstr "attributs & 0xff" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "exit_signal" msgstr "exit_signal" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "stack" msgstr "stack" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I<--->" msgstr "I<--->" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "stack_size" msgstr "stack_size" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "tls" msgstr "tls" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "See CLONE_SETTLS" msgstr "Voir CLONE_SETTLS" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "set_tid" msgstr "set_tid" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "See below for details" msgstr "Voir ci-dessous pour des détails" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "set_tid_size" msgstr "set_tid_size" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "cgroup" msgstr "cgroup" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "See CLONE_INTO_CGROUP" msgstr "Voir CLONE_INTO_CGROUP" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "The child termination signal" msgstr "Signal de fin de l'enfant" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the child process terminates, a signal may be sent to the parent. The " "termination signal is specified in the low byte of I (B()) or " "in I (B()). If this signal is specified as " "anything other than B, then the parent process must specify the " "B<__WALL> or B<__WCLONE> options when waiting for the child with " "B(2). If no signal (i.e., zero) is specified, then the parent process " "is not signaled when the child terminates." msgstr "" "Quand le processus enfant se termine, un signal peut être envoyé au parent. " "Le signal de fin est indiqué dans l'octet de poids faible de I " "(B()) ou dans I (B()). Si ce signal est " "différent de B, le processus parent doit également spécifier les " "options B<__WALL> ou B<__WCLONE> lorsqu'il attend la fin de l'enfant avec " "B(2). Si aucun signal n'est indiqué (donc zéro), le processus parent " "ne sera pas notifié de la terminaison de l'enfant." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "The set_tid array" msgstr "Le tableau set_tid" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "By default, the kernel chooses the next sequential PID for the new process " "in each of the PID namespaces where it is present. When creating a process " "with B(), the I array (available since Linux 5.5) can be " "used to select specific PIDs for the process in some or all of the PID " "namespaces where it is present. If the PID of the newly created process " "should be set only for the current PID namespace or in the newly created PID " "namespace (if I contains B) then the first element in " "the I array has to be the desired PID and I needs to " "be 1." msgstr "" "Par défaut, le noyau choisit le PID séquentiel suivant pour le nouveau " "processus dans chacun des espaces de noms de PID où il est présent. Lors de " "la création d'un processus avec B(), le tableau I (depuis " "Linux 5.5) peut être utilisé pour sélectionner des PID spécifiques pour le " "processus dans tout ou partie des espaces de noms où il est présent. Si le " "PID du processus nouvellement créé ne doit être positionné que dans l'espace " "de noms du processus actuel ou dans celui du PID nouvellement créé (si " "I contient B), le premier élément du tableau I " "doit être le PID souhaité et I doit valoir B<1>." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the PID of the newly created process should have a certain value in " "multiple PID namespaces, then the I array can have multiple " "entries. The first entry defines the PID in the most deeply nested PID " "namespace and each of the following entries contains the PID in the " "corresponding ancestor PID namespace. The number of PID namespaces in which " "a PID should be set is defined by I which cannot be larger " "than the number of currently nested PID namespaces." msgstr "" "Si le PID du processus nouvellement créé doit avoir une certaine valeur dans " "plusieurs espaces de noms de PID, le tableau I peut avoir plusieurs " "entrées. La première entrée définit le PID de l'espace de noms le plus " "imbriqué, puis chacune des entrées suivantes contient le PID de l'espace de " "noms supérieur correspondant. Le nombre d'espaces de noms de PID où un PID " "doit être positionné est défini par I, qui ne peut pas être " "plus grand que le nombre d'espaces de noms de PID imbriqués." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "To create a process with the following PIDs in a PID namespace hierarchy:" msgstr "" "Pour créer un processus dont les PID suivants s'inscrivent dans la " "hiérarchie de l'espace de noms de PID :" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "PID NS level" msgstr "Niveau esp. noms du PID" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Requested PID" msgstr "PID demandé" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "0" msgstr "0" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "31496" msgstr "31496" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Outermost PID namespace" msgstr "Espace de noms du PID le plus à l'extérieur" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "1" msgstr "1" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "42" msgstr "42" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "2" msgstr "2" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "7" msgstr "7" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Innermost PID namespace" msgstr "Espace de noms du PID le plus à l'intérieur" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Set the array to:" msgstr "Positionner le tableau sur :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "set_tid[0] = 7;\n" "set_tid[1] = 42;\n" "set_tid[2] = 31496;\n" "set_tid_size = 3;\n" msgstr "" "set_tid[0] = 7;\n" "set_tid[1] = 42;\n" "set_tid[2] = 31496;\n" "set_tid_size = 3;\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If only the PIDs in the two innermost PID namespaces need to be specified, " "set the array to:" msgstr "" "Si seuls les PID des deux espaces de noms de PID les plus à l’intérieur " "doivent être indiqués, positionnez le tableau sur :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "set_tid[0] = 7;\n" "set_tid[1] = 42;\n" "set_tid_size = 2;\n" msgstr "" "set_tid[0] = 7;\n" "set_tid[1] = 42;\n" "set_tid_size = 2;\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The PID in the PID namespaces outside the two innermost PID namespaces is " "selected the same way as any other PID is selected." msgstr "" "Le PID dans les espaces de noms de PID en dehors des deux espaces de noms " "les plus à l’intérieur sera sélectionné de la même manière qu'on sélectionne " "n'importe quel autre PID." #. commit 124ea650d3072b005457faed69909221c2905a1f #. commit 1caef81da05a84a40dbf02110e967ce6d1135ff6 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I feature requires B or (since Linux 5.9) " "B in all owning user namespaces of the target PID " "namespaces." msgstr "" "La fonctionnalité I exige B ou (depuis Linux 5.9) " "B dans tous les espaces de noms appartenant à " "l'utilisateur des espaces de noms du processus cible." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Callers may only choose a PID greater than 1 in a given PID namespace if an " "B process (i.e., a process with PID 1) already exists in that " "namespace. Otherwise the PID entry for this PID namespace must be 1." msgstr "" "Les appelants ne peuvent choisir qu'un PID supérieur à B<1> dans un espace " "de noms de PID donné si un processus B (à savoir un processus dont le " "PID est B<1>) existe déjà dans cet espace de noms. Sinon, l'entrée du PID " "dans cet espace de noms de PID doit valoir B<1>." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "The flags mask" msgstr "Le masque flags" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Both B() and B() allow a flags bit mask that modifies their " "behavior and allows the caller to specify what is shared between the calling " "process and the child process. This bit mask\\[em]the I argument of " "B() or the I field passed to B()\\[em]is " "referred to as the I mask in the remainder of this page." msgstr "" "Tant B() que B() permettent d'utiliser un masque de bit flags " "pour modifier leur comportement, et elles permettent à l'appelant d'indiquer " "ce qui est partagé entre le processus appelant et son enfant. Ce masque de " "bit – le paramètre I de B() ou le champ I passé " "à B() – est désigné comme le masque I dans le reste de cette " "page." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "The I mask is specified as a bitwise OR of zero or more of the " "constants listed below. Except as noted below, these flags are available " "(and have the same effect) in both B() and B()." msgstr "" "Le masque I est indiqué comme un OU binaire de zéro ou plus des " "constantes ci-dessous. Sauf explicitement indiqués, ces attributs sont " "disponibles (et ont le même effet) dans B() et dans B()." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.49)" msgstr "B (depuis Linux 2.5.49)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Clear (zero) the child thread ID at the location pointed to by I " "(B()) or I (B()) in child memory when " "the child exits, and do a wakeup on the futex at that address. The address " "involved may be changed by the B(2) system call. This is " "used by threading libraries." msgstr "" "Effacer (zéro) l'ID du thread enfant situé là où pointe I " "(B()) ou I (B()) dans la mémoire de " "l'enfant lorsqu'il se termine, et provoquer le réveil avec le futex à cette " "adresse. L'adresse concernée peut être modifiée par l'appel système " "B(2). Cela est utilisé dans les bibliothèques de gestion de " "threads." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.49)" msgstr "B (depuis Linux 2.5.49)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Store the child thread ID at the location pointed to by I " "(B()) or I (B()) in the child's memory. " "The store operation completes before the clone call returns control to user " "space in the child process. (Note that the store operation may not have " "completed before the clone call returns in the parent process, which is " "relevant if the B flag is also employed.)" msgstr "" "Enregistrer l'ID du thread de l'enfant là où pointe I " "((B()) ou I (B()) dans la mémoire de " "l'enfant. L'opération d'enregistrement se termine avant que l'appel clone ne " "redonne le contrôle à l'espace utilisateur dans le processus enfant " "(remarquez que l'opération d'enregistrement peut ne pas être terminée avant " "que l'appel clone ne renvoie au processus parent, ce qui sera pertinent si " "l'attribut B est également utilisé)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 5.5)" msgstr "B (depuis Linux 5.5)" #. commit b612e5df4587c934bd056bf05f4a1deca4de4f75 #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "By default, signal dispositions in the child thread are the same as in the " "parent. If this flag is specified, then all signals that are handled in the " "parent (and not set to B) are reset to their default dispositions " "(B) in the child." msgstr "" "Par défaut, l'état des signaux du thread de l'enfant est le même que celui " "du parent. Si cet attribut est positionné, tous les signaux gérés par le " "parent (et non définis à B) sont réinitialisés à leur état par " "défaut (B) dans l'enfant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Specifying this flag together with B is nonsensical and " "disallowed." msgstr "" "Indiquer cet attribut avec B n'a pas de sens et n'est pas " "autorisé." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (historical)" msgstr "B (historique)" #. added in Linux 2.5.32; removed in Linux 2.6.0-test4 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For a while (during the Linux 2.5 development series) there was a " "B flag, which caused the parent not to receive a signal when " "the child terminated. Ultimately, the effect of this flag was subsumed " "under the B flag and by the time Linux 2.6.0 was released, " "this flag had no effect. Starting in Linux 2.6.2, the need to give this " "flag together with B disappeared." msgstr "" "Pendant un moment (pendant la série de versions au cours du développement de " "Linux 2.5), il y a eu un attribut B, avec lequel le parent " "ne recevait pas de signal quand l'enfant se terminait. Au final, l'effet de " "cet attribut a été inhibé par l'attribut B et quand Linux " "2.6.0 a été publié, cet attribut n'avait pas d'effet. À partir de Linux " "2.6.2, il n'a plus été nécessaire de fournir cet attribut avec " "B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag is still defined, but it is usually ignored when calling " "B(). However, see the description of B for some " "exceptions." msgstr "" "Cet attribut est toujours défini, mais il est généralement ignoré lors d'un " "appel B(). Toutefois, voir la description de B pour " "certaines exceptions." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.0)" msgstr "B (depuis Linux 2.0)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the calling process and the child process share " "the same file descriptor table. Any file descriptor created by the calling " "process or by the child process is also valid in the other process. " "Similarly, if one of the processes closes a file descriptor, or changes its " "associated flags (using the B(2) B operation), the other " "process is also affected. If a process sharing a file descriptor table " "calls B(2), its file descriptor table is duplicated (unshared)." msgstr "" "Si l'attribut B est positionné, le processus appelant et le " "processus enfant partagent la même table de descripteurs de fichier. Tout " "descripteur créé par un processus est également valable pour l'autre " "processus. De même si un processus ferme un descripteur, ou modifie ses " "attributs (en utilisant l'opération B(2) B), l'autre " "processus en est aussi affecté. Si un processus qui partage une table de " "descripteurs de fichier appelle B(2), sa table est dupliquée (non " "partagée)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is not set, the child process inherits a copy of all file " "descriptors opened in the calling process at the time of the clone call. " "Subsequent operations that open or close file descriptors, or change file " "descriptor flags, performed by either the calling process or the child " "process do not affect the other process. Note, however, that the duplicated " "file descriptors in the child refer to the same open file descriptions as " "the corresponding file descriptors in the calling process, and thus share " "file offsets and file status flags (see B(2))." msgstr "" "Si B n'est pas positionné, le processus enfant hérite d'une " "copie des descripteurs de fichier ouverts par l'appelant au moment de " "l'appel B(). Les opérations d'ouverture et de fermeture ou de " "modification d'attributs du descripteur de fichier subséquentes, effectuées " "par le processus appelant ou son enfant, ne concernent pas l'autre " "processus. Remarquez toutefois que les copies des descripteurs de fichier " "dans l'enfant sont associées aux mêmes descriptions de fichiers ouverts que " "les descripteurs de fichier correspondants dans le processus appelant, " "partageant ainsi les attributs de position et d’états du fichier (consultez " "B(2))." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.0)" msgstr "B (depuis Linux 2.0)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the caller and the child process share the same " "filesystem information. This includes the root of the filesystem, the " "current working directory, and the umask. Any call to B(2), " "B(2), or B(2) performed by the calling process or the child " "process also affects the other process." msgstr "" "Si l'attribut B est positionné, le processus appelant et le " "processus enfant partagent les mêmes informations concernant le système de " "fichiers. Cela inclut la racine du système de fichiers, le répertoire de " "travail, et l'umask. Tout appel à B(2), B(2) ou B(2) " "effectué par un processus aura également une influence sur l'autre processus." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is not set, the child process works on a copy of the " "filesystem information of the calling process at the time of the clone " "call. Calls to B(2), B(2), or B(2) performed later " "by one of the processes do not affect the other process." msgstr "" "Si B n'est pas positionné, le processus enfant travaille sur une " "copie des informations de l'appelant concernant le système de fichiers au " "moment de l'appel clone. Les appels à B(2), B(2), B(2) " "effectués ensuite par un processus n'affectent pas l'autre processus." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 5.7)" msgstr "B (depuis Linux 5.7)" #. commit ef2c41cf38a7559bbf91af42d5b6a4429db8fc68 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "By default, a child process is placed in the same version 2 cgroup as its " "parent. The B flag allows the child process to be " "created in a different version 2 cgroup. (Note that B " "has effect only for version 2 cgroups.)" msgstr "" "Par défaut, un processus enfant est mis dans le même cgroup version 2 que " "son parent. L'attribut B permet au processus enfant " "d'être créé dans un cgroup version 2 différent (remarquez que " "B n'a d'effet que sur les cgroup version 2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In order to place the child process in a different cgroup, the caller " "specifies B in I and passes a file " "descriptor that refers to a version 2 cgroup in the I " "field. (This file descriptor can be obtained by opening a cgroup v2 " "directory using either the B or the B flag.) Note that " "all of the usual restrictions (described in B(7)) on placing a " "process into a version 2 cgroup apply." msgstr "" "Pour mettre le processus enfant dans un cgroup différent, l'appelant indique " "B dans I et passe un descripteur de " "fichier qui se rapporte à un cgroup version 2 du champ I (le " "descripteur de fichier peut être obtenu en ouvrant un répertoire cgroup v2, " "en utilisant l'attribut B ou B). Remarquez que toutes les " "restrictions habituelles (décrites dans B(7)) quant au " "positionnement d'un processus dans un cgroup version 2 s'appliquent." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Among the possible use cases for B are the following:" msgstr "" "Voici certains des cas d'utilisation possibles de B :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Spawning a process into a cgroup different from the parent's cgroup makes it " "possible for a service manager to directly spawn new services into dedicated " "cgroups. This eliminates the accounting jitter that would be caused if the " "child process was first created in the same cgroup as the parent and then " "moved into the target cgroup. Furthermore, spawning the child process " "directly into a target cgroup is significantly cheaper than moving the child " "process into the target cgroup after it has been created." msgstr "" "Créer un processus dans un autre cgroup que celui du parent permet au " "gestionnaire de service de placer directement de nouveaux services dans des " "cgroup dédiés. Cela élimine les contraintes comptables qui existeraient si " "le processus enfant était créé d'abord dans le même cgroup que le parent " "puis déplacé dans un cgroup cible. De plus, la création d'un processus " "enfant directement dans un cgroup cible coûte beaucoup moins cher que de " "déplacer le processus enfant dans le cgroup cible après l'avoir créé." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B flag also allows the creation of frozen child " "processes by spawning them into a frozen cgroup. (See B(7) for a " "description of the freezer controller.)" msgstr "" "L'attribut B permet également la création de processus " "enfants gelés en les créant dans un cgroup gelé (voir B(7) pour une " "description des contrôleurs de gel)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For threaded applications (or even thread implementations which make use of " "cgroups to limit individual threads), it is possible to establish a fixed " "cgroup layout before spawning each thread directly into its target cgroup." msgstr "" "Pour les applications threadées (voire même les implémentations de thread " "qui utilisent des cgroup pour limiter les threads individuels), il est " "possible d'établir une couche de cgroup fixe avant de créer chaque thread " "directement dans son cgroup cible." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.25)" msgstr "B (depuis Linux 2.6.25)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then the new process shares an I/O context with the " "calling process. If this flag is not set, then (as with B(2)) the " "new process has its own I/O context." msgstr "" "Si B est défini, alors le nouveau processus partage un contexte " "d'entrées-sorties avec le processus appelant. Si cet attribut n'est pas " "défini, alors (comme pour B(2)) le nouveau processus a son propre " "contexte d'entrées-sorties." #. The following based on text from Jens Axboe #. the anticipatory and CFQ scheduler #. with CFQ and AS. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I/O context is the I/O scope of the disk scheduler (i.e., what the I/O " "scheduler uses to model scheduling of a process's I/O). If processes share " "the same I/O context, they are treated as one by the I/O scheduler. As a " "consequence, they get to share disk time. For some I/O schedulers, if two " "processes share an I/O context, they will be allowed to interleave their " "disk access. If several threads are doing I/O on behalf of the same process " "(B(3), for instance), they should employ B to get better " "I/O performance." msgstr "" "Le contexte d'entrées-sorties correspond à la visibilité que l'ordonnanceur " "de disques a des entrées-sorties (c'est-à-dire, ce que l'ordonnanceur " "d'entrées-sorties utilise pour modéliser l'ordonnancement des entrées-" "sorties d'un processus). Si des processus partagent le même contexte " "d'entrées-sorties, ils sont traités comme un seul par l'ordonnanceur " "d'entrées-sorties. Par conséquent, ils partagent le même temps d'accès aux " "disques. Pour certains ordonnanceurs d'entrées-sorties, si deux processus " "partagent un contexte d'entrées-sorties, ils seront autorisés à intercaler " "leurs accès disque. Si plusieurs threads utilisent des entrées-sorties pour " "le même processus (B(3), par exemple), ils devraient utiliser " "B pour obtenir de meilleures performances d'entrées-sorties." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the kernel is not configured with the B option, this flag " "is a no-op." msgstr "" "Si le noyau n'a pas été configuré avec l'option B, cet " "attribut n'a aucun effet." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 4.6)" msgstr "B (depuis Linux 4.6)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Create the process in a new cgroup namespace. If this flag is not set, then " "(as with B(2)) the process is created in the same cgroup namespaces " "as the calling process." msgstr "" "Créer le processus dans un nouvel espace de noms cgroup. Si cet attribut " "n'est pas invoqué, alors (comme pour B(2)) le processus est créé dans " "le même espace de noms cgroup que le processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For further information on cgroup namespaces, see B(7)." msgstr "" "Pour plus d'informations sur les espaces de noms cgroup, consultez " "B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Only a privileged process (B) can employ B." msgstr "" "Seul un processus disposant de privilèges (B) peut utiliser " "B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.19)" msgstr "B (depuis Linux 2.6.19)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then create the process in a new IPC namespace. " "If this flag is not set, then (as with B(2)), the process is created " "in the same IPC namespace as the calling process." msgstr "" "Si B est invoqué, alors le processus est créé dans un nouvel " "espace de noms utilisateur IPC. Si cet attribut n'est pas invoqué, alors " "(comme pour B(2)) le processus est créé dans le même espace de noms " "utilisateur IPC que le processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For further information on IPC namespaces, see B(7)." msgstr "" "Pour plus d'informations sur les espaces de noms IPC, reportez vous à " "B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Only a privileged process (B) can employ B. " "This flag can't be specified in conjunction with B." msgstr "" "Seul un processus disposant de privilèges (B) peut utiliser " "B. Cet attribut ne peut pas être employé en association avec " "B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.24)" msgstr "B (depuis Linux 2.6.24)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(The implementation of this flag was completed only by about Linux 2.6.29.)" msgstr "" "(L'implémentation de cet attribut n'est complète que depuis Linux 2.6.29.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then create the process in a new network " "namespace. If this flag is not set, then (as with B(2)) the process " "is created in the same network namespace as the calling process." msgstr "" "Si B est invoqué, alors le processus est créé dans un nouvel " "espace de noms réseau. Si cet attribut n'est pas invoqué, alors (comme pour " "B(2)) le processus est créé dans le même espace de noms réseau que le " "processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For further information on network namespaces, see B(7)." msgstr "" "Pour plus d'informations sur les espaces de noms réseau, reportez vous à " "B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Only a privileged process (B) can employ B." msgstr "" "Seul un processus disposant de privilèges (B) peut appeler " "B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.4.19)" msgstr "B (depuis Linux 2.4.19)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the cloned child is started in a new mount " "namespace, initialized with a copy of the namespace of the parent. If " "B is not set, the child lives in the same mount namespace as " "the parent." msgstr "" "Si l'attribut B est invoqué, l'enfant cloné démarre dans un " "nouvel espace de noms de montage, initialisé avec une copie de l'espace de " "noms du parent. Si B n'est pas invoqué, alors l'enfant existe " "dans le même espace de noms de montage que le parent." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For further information on mount namespaces, see B(7) and " "B(7)." msgstr "" "Pour plus d'informations sur les espaces de noms de montage, consultez " "B(7) et B(7)." #. See https://lwn.net/Articles/543273/ #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Only a privileged process (B) can employ B. It " "is not permitted to specify both B and B in the same " "clone call." msgstr "" "Seul un processus disposant de privilèges (B) peut utiliser " "l'attribut B. Il n'est pas possible de spécifier à la fois " "B et B pour le même appel clone." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.24)" msgstr "B (depuis Linux 2.6.24)" #. This explanation draws a lot of details from #. http://lwn.net/Articles/259217/ #. Authors: Pavel Emelyanov #. and Kir Kolyshkin #. The primary kernel commit is 30e49c263e36341b60b735cbef5ca37912549264 #. Author: Pavel Emelyanov #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then create the process in a new PID namespace. " "If this flag is not set, then (as with B(2)) the process is created " "in the same PID namespace as the calling process." msgstr "" "Si B est invoqué, alors le processus est créé dans un nouvel " "espace de noms PID. Si cet attribut n'est pas invoqué, alors (comme pour " "B(2)) le processus est créé dans le même espace de noms PID que le " "processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For further information on PID namespaces, see B(7) and " "B(7)." msgstr "" "Pour plus d'informations sur les espaces de noms PID, consultez " "B(7) et B(7)." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "Only a privileged process (B) can employ B. " "This flag can't be specified in conjunction with B." msgstr "" "Seul un processus disposant de privilèges (B) peut utiliser " "B. Cet attribut ne peut pas être employé en association avec " "B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(This flag first became meaningful for B() in Linux 2.6.23, the " "current B() semantics were merged in Linux 3.5, and the final pieces " "to make the user namespaces completely usable were merged in Linux 3.8.)" msgstr "" "(Cet attribut est apparu dans B() pour la première fois dans " "Linux 2.6.23, les sémantiques actuelles de B() ont été ajoutées dans " "Linux 3.5, et les derniers modules rendant les espaces de noms utilisateur " "complètement opérationnels sont apparus dans Linux 3.8.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then create the process in a new user " "namespace. If this flag is not set, then (as with B(2)) the process " "is created in the same user namespace as the calling process." msgstr "" "Si B est invoqué, alors le processus est créé dans un nouvel " "espace de noms utilisateur. Si cet attribut n'est pas invoqué, alors (comme " "pour B(2)) le processus est créé dans le même espace de noms " "utilisateur que le processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For further information on user namespaces, see B(7) and " "B(7)." msgstr "" "Pour plus d'informations sur les espaces de noms utilisateur, consultez " "B(7) et B(7)." #. Before Linux 2.6.29, it appears that only CAP_SYS_ADMIN was needed #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Before Linux 3.8, use of B required that the caller have " "three capabilities: B, B, and B. " "Starting with Linux 3.8, no privileges are needed to create a user namespace." msgstr "" "Avant Linux 3.8, les processus appelant devaient disposer de trois capacités " "pour utiliser B : B, B et " "B. À partir de Linux 3.8, il n'est plus nécessaire de disposer " "de privilèges pour créer des espaces de noms utilisateur." #. commit e66eded8309ebf679d3d3c1f5820d1f2ca332c71 #. https://lwn.net/Articles/543273/ #. The fix actually went into Linux 3.9 and into Linux 3.8.3. However, user namespaces #. were, for practical purposes, unusable in earlier Linux 3.8.x because of the #. various filesystems that didn't support userns. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag can't be specified in conjunction with B or " "B. For security reasons, B cannot be specified " "in conjunction with B." msgstr "" "Cet attribut ne peut pas être utilisé en association avec B ou " "avec B. Pour des raisons de sécurité, B ne peut " "pas être utilisé en association avec B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.19)" msgstr "B (depuis Linux 2.6.19)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then create the process in a new UTS namespace, " "whose identifiers are initialized by duplicating the identifiers from the " "UTS namespace of the calling process. If this flag is not set, then (as " "with B(2)) the process is created in the same UTS namespace as the " "calling process." msgstr "" "Si B est défini, créez le processus dans un nouvel espace de " "noms UTS, dont les identifiants sont initialisés en dupliquant les " "identifiants de l'espace de noms UTS du processus appelant. Si cet attribut " "n'est pas défini, alors (comme pour B(2)) le processus est créé dans " "le même espace de noms UTS que le processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For further information on UTS namespaces, see B(7)." msgstr "" "Pour obtenir plus d'informations sur les espaces de noms UTS, consultez " "B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Only a privileged process (B) can employ B." msgstr "" "Seul un processus disposant de privilèges (B) peut utiliser " "B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.3.12)" msgstr "B (depuis Linux 2.3.12)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then the parent of the new child (as returned by " "B(2)) will be the same as that of the calling process." msgstr "" "Si B est présent, le parent du nouvel enfant (comme il est " "indiqué par B(2)) sera le même que celui du processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is not set, then (as with B(2)) the child's parent " "is the calling process." msgstr "" "Si B n'est pas fourni, alors (comme pour B(2)) le parent " "du processus enfant sera le processus appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that it is the parent process, as returned by B(2), which is " "signaled when the child terminates, so that if B is set, then " "the parent of the calling process, rather than the calling process itself, " "is signaled." msgstr "" "Remarquez que c'est le processus parent, tel qu'indiqué par B(2), " "qui est notifié lors de la fin de l'enfant. Ainsi, si B est " "présent, alors c'est le parent du processus appelant, et non ce dernier, qui " "sera notifié." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B flag can't be used in clone calls by the global init " "process (PID 1 in the initial PID namespace) and init processes in other " "PID namespaces. This restriction prevents the creation of multi-rooted " "process trees as well as the creation of unreapable zombies in the initial " "PID namespace." msgstr "" "L'attribut B ne peut pas être utilisé dans des appels clone " "par le processus d'initialisation global (PID B<1> dans l'espace de noms PID " "initial) et par les processus initiaux dans les autres espaces de noms PID. " "Cette restriction empêche la création d'arbres de processus à plusieurs " "racines ou de zombies non récupérables dans l'espace de noms PID initial." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.49)" msgstr "B (depuis Linux 2.5.49)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Store the child thread ID at the location pointed to by I " "(B()) or I (B()) in the parent's " "memory. (In Linux 2.5.32-2.5.48 there was a flag B that did " "this.) The store operation completes before the clone call returns control " "to user space." msgstr "" "Enregistrer l'ID du thread enfant à l'endroit vers lequel pointe " "I (B()) ou I (B()) dans la " "mémoire du parent (dans Linux 2.5.32-2.5.48 il y a un attribut " "B qui fait cela). L'opération d'enregistrement s'achève avant " "que l'opération clone ne donne le contrôle à l'espace utilisateur." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (Linux 2.0 to Linux 2.5.15)" msgstr "B (de Linux 2.0 à Linux 2.5.15)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the child process is created with the same process " "ID as the calling process. This is good for hacking the system, but " "otherwise of not much use. From Linux 2.3.21 onward, this flag could be " "specified only by the system boot process (PID 0). The flag disappeared " "completely from the kernel sources in Linux 2.5.16. Subsequently, the " "kernel silently ignored this bit if it was specified in the I mask. " "Much later, the same bit was recycled for use as the B flag." msgstr "" "Si l'attribut B est positionné, les processus appelant et enfant " "ont le même numéro de processus. C'est bien pour bidouiller le système, mais " "autrement il n'est plus utilisé. Depuis Linux 2.3.21, cet attribut ne peut " "être utilisé que par le processus de démarrage du système (PID 0). Il a " "disparu dans Linux 2.5.16. Si bien que le noyau ignorait silencieusement le " "bit s'il était indiqué dans le masque I. Bien plus tard, le même bit " "a été recyclé pour être utilisé comme attribut de B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 5.2)" msgstr "B (depuis Linux 5.2)" #. commit b3e5838252665ee4cfa76b82bdf1198dca81e5be #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If this flag is specified, a PID file descriptor referring to the child " "process is allocated and placed at a specified location in the parent's " "memory. The close-on-exec flag is set on this new file descriptor. PID " "file descriptors can be used for the purposes described in B(2)." msgstr "" "Si cet attribut est indiqué, un descripteur de fichier PID renvoyant au " "processus enfant est alloué et placé à un endroit donné dans la mémoire du " "parent. L'attribut close-on-exec est positionné sur ce nouveau descripteur " "de fichier. Les descripteurs de fichier PID peuvent être utilisés pour des " "objectifs décrits dans B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When using B(), the PID file descriptor is placed at the location " "pointed to by I." msgstr "" "Quand on utilise B(), le descripteur de fichier PID est placé à un " "endroit vers lequel pointe I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When using B(), the PID file descriptor is placed at the location " "pointed to by I. Since the I argument is used to " "return the PID file descriptor, B cannot be used with " "B when calling B()." msgstr "" "Quand on utilise B(), le descripteur de fichier PID est placé à un " "endroit vers lequel pointe I. Comme le paramètre I " "est utilisé pour renvoyer le descripteur de fichier PID, B ne " "peut pas être utilisé avec B lors d'un appel B()." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "It is currently not possible to use this flag together with B " "This means that the process identified by the PID file descriptor will " "always be a thread group leader." msgstr "" "Il n'est pas possible actuellement d'utiliser cet attribut avec " "B Cela veut dire que le processus identifié par le " "descripteur de fichier PID sera toujours un leader dans le groupe de threads." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the obsolete B flag is specified alongside B " "when calling B(), an error is returned. An error also results if " "B is specified when calling B(). This error " "behavior ensures that the bit corresponding to B can be " "reused for further PID file descriptor features in the future." msgstr "" "Si l'attribut obsolète B est indiqué avec B " "lors d'un appel à B(), une erreur est renvoyée. Une erreur se produit " "aussi si B est spécifié lors d'un appel à B(). Ce " "comportement garantit que le bit qui correspond à B pourra " "être utilisé à l'avenir pour des fonctionnalités supplémentaires du " "descripteur de fichier PID." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.2)" msgstr "B (depuis Linux 2.2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is specified, and the calling process is being traced, " "then trace the child also (see B(2))." msgstr "" "Si l'attribut B est positionné et si l'appelant est suivi par " "un débogueur, alors l'enfant sera également suivi (consultez B(2))." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.32)" msgstr "B (depuis Linux 2.5.32)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The TLS (Thread Local Storage) descriptor is set to I." msgstr "Le descripteur TLS (Thread Local Storage) est positionné sur I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The interpretation of I and the resulting effect is architecture " "dependent. On x86, I is interpreted as a I (see " "B(2)). On x86-64 it is the new value to be set for the %fs " "base register (see the B argument to B(2)). On " "architectures with a dedicated TLS register, it is the new value of that " "register." msgstr "" "L'interprétation de I et les effets qui en découlent dépendent de " "l'architecture. Sur x86, I est interprété comme une I (voir B(2)). Sur x86-64, il s'agit de la " "nouvelle valeur à positionner pour le registre de base %fs (voir le " "paramètre B de B(2)). Sur les architectures ayant " "un registre TLS dédié, il s'agit de la nouvelle valeur de ce registre." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Use of this flag requires detailed knowledge and generally it should not be " "used except in libraries implementing threading." msgstr "" "L'utilisation de cet attribut exige une connaissance détaillée et n'est " "généralement pas souhaitable, sauf dans l'implémentation de bibliothèques de " "gestion des threads." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.0)" msgstr "B (depuis Linux 2.0)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the calling process and the child process share " "the same table of signal handlers. If the calling process or child process " "calls B(2) to change the behavior associated with a signal, the " "behavior is changed in the other process as well. However, the calling " "process and child processes still have distinct signal masks and sets of " "pending signals. So, one of them may block or unblock signals using " "B(2) without affecting the other process." msgstr "" "Si l'attribut B est positionné, le processus appelant et le " "processus enfant partagent la même table de gestionnaires de signaux. Si " "l'appelant, ou l'enfant, appelle B(2) pour modifier le " "comportement associé à un signal, ce comportement est également changé pour " "l'autre processus. Néanmoins, l'appelant et l'enfant ont toujours des " "masques de signaux distincts, et leurs ensembles de signaux bloqués sont " "indépendants. L'un des processus peut donc bloquer ou débloquer un signal en " "utilisant B(2) sans affecter l'autre processus." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is not set, the child process inherits a copy of the " "signal handlers of the calling process at the time of the clone call. Calls " "to B(2) performed later by one of the processes have no effect " "on the other process." msgstr "" "Si B n'est pas utilisé, le processus enfant hérite d'une " "copie des gestionnaires de signaux de l'appelant lors de l'invocation de " "B(). Les appels à B(2) effectués ensuite depuis l'un des " "processus n'ont pas d'effets sur l'autre processus." #. Precisely: Linux 2.6.0-test6 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 2.6.0, the I mask must also include B if " "B is specified." msgstr "" "Depuis Linux 2.6.0, le masque I doit aussi inclure B si " "B est spécifié" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.0)" msgstr "B (depuis Linux 2.6.0)" #. Precisely: Linux 2.6.0-test2 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then the child is initially stopped (as though " "it was sent a B signal), and must be resumed by sending it a " "B signal." msgstr "" "Si l'attribut B est positionné, l'enfant est initialement " "stoppé (comme s'il avait reçu le signal B), et doit être relancé en " "lui envoyant le signal B." #. glibc 2.8 removed this defn from bits/sched.h #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag was I from Linux 2.6.25 onward, and was I " "altogether in Linux 2.6.38. Since then, the kernel silently ignores it " "without error. Starting with Linux 4.6, the same bit was reused for the " "B flag." msgstr "" "Cet attribut a été rendu I par Linux 2.6.25, puis il a été " "I dans Linux 2.6.38. Depuis lors, le noyau l'ignore " "silencieusement sans erreur. À partir de Linux 4.6, le même bit a été " "réutilisé comme attribut de B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.10)" msgstr "B (depuis Linux 2.5.10)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, then the child and the calling process share a " "single list of System V semaphore adjustment (I) values (see " "B(2)). In this case, the shared list accumulates I values " "across all processes sharing the list, and semaphore adjustments are " "performed only when the last process that is sharing the list terminates (or " "ceases sharing the list using B(2)). If this flag is not set, then " "the child has a separate I list that is initially empty." msgstr "" "Si B est positionné, l'enfant et le processus appelant " "partagent une même liste de valeurs d’ajustement de sémaphores System V " "(consultez B(2)). Dans ce cas, cette liste regroupe toutes les " "valeurs I des processus partageant cette liste, et les modifications " "des sémaphores sont effectuées seulement lorsque le dernier processus de la " "liste se termine (ou cesse de partager la liste en invoquant B(2)). " "Si cet attribut n'est pas utilisé, l'enfant a une liste I séparée, " "initialement vide." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.4.0)" msgstr "B (depuis Linux 2.4.0)" #. Precisely: Linux 2.6.0-test8 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the child is placed in the same thread group as " "the calling process. To make the remainder of the discussion of " "B more readable, the term \"thread\" is used to refer to the " "processes within a thread group." msgstr "" "Si B est présent, l'enfant est placé dans le même groupe de " "threads que le processus appelant. Afin de rendre l'explication de " "B plus lisible, le terme «\\ thread\\ » est utilisé pour " "parler des processus dans un même groupe de threads." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Thread groups were a feature added in Linux 2.4 to support the POSIX threads " "notion of a set of threads that share a single PID. Internally, this shared " "PID is the so-called thread group identifier (TGID) for the thread group. " "Since Linux 2.4, calls to B(2) return the TGID of the caller." msgstr "" "Les groupes de threads sont une fonctionnalité ajoutée dans Linux 2.4 pour " "gérer la notion POSIX d'ensemble de threads partageant un même PID. En " "interne, ce PID partagé est appelé identifiant de groupe de threads (TGID). " "Depuis Linux 2.4, l'appel B(2) renvoie l'identifiant du groupe de " "threads de l'appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The threads within a group can be distinguished by their (system-wide) " "unique thread IDs (TID). A new thread's TID is available as the function " "result returned to the caller, and a thread can obtain its own TID using " "B(2)." msgstr "" "Les threads dans un groupe peuvent être distingués par leur identifiant de " "thread (TID, unique sur le système). Le TID d'un nouveau thread est " "disponible sous la forme du résultat d'une fonction renvoyé à l'appelant et " "un thread peut obtenir son propre TID en utilisant B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When a clone call is made without specifying B, then the " "resulting thread is placed in a new thread group whose TGID is the same as " "the thread's TID. This thread is the I of the new thread group." msgstr "" "Quand clone est appelé sans positionner B, le nouveau thread " "est placé dans un nouveau groupe de threads dont le TGID est identique au " "TID du nouveau thread. Ce thread est le I du nouveau groupe." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A new thread created with B has the same parent process as the " "process that made the clone call (i.e., like B), so that calls " "to B(2) return the same value for all of the threads in a thread " "group. When a B thread terminates, the thread that created it " "is not sent a B (or other termination) signal; nor can the status " "of such a thread be obtained using B(2). (The thread is said to be " "I.)" msgstr "" "Un nouveau thread créé en utilisant B a le même processus " "parent que le processus réalisant l'appel clone (de même qu'avec " "B), ainsi les appels à B(2) renvoient la même valeur " "à tous les threads dans un même groupe. Lorsqu'un thread créé avec " "B termine, le thread qui l’a créé ne reçoit pas le signal " "B (ou autre notification de terminaison)\\ ; de même, l'état d'un " "tel thread ne peut pas être obtenu par B(2). Le thread est dit " "I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "After all of the threads in a thread group terminate the parent process of " "the thread group is sent a B (or other termination) signal." msgstr "" "Lorsque tous les threads d'un groupe de threads terminent, le processus " "parent du groupe reçoit un signal B (ou un autre indicateur de " "terminaison)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If any of the threads in a thread group performs an B(2), then all " "threads other than the thread group leader are terminated, and the new " "program is executed in the thread group leader." msgstr "" "Si l'un des threads dans un groupe de threads appelle B(2), tous les " "threads sauf le leader sont tués, et le nouveau programme est exécuté dans " "le leader du groupe de threads." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If one of the threads in a thread group creates a child using B(2), " "then any thread in the group can B(2) for that child." msgstr "" "Si l'un des threads dans un groupe crée un enfant avec B(2), n'importe " "lequel des threads du groupe peut utiliser B(2) sur cet enfant." #. Precisely: Linux 2.6.0-test6 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 2.5.35, the I mask must also include B if " "B is specified (and note that, since Linux 2.6.0, " "B also requires B to be included)." msgstr "" "Depuis Linux 2.5.35, le masque I doit aussi inclure B " "si B est spécifié (et remarquez que depuis Linux 2.6.0, " "B a également besoin de B)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Signal dispositions and actions are process-wide: if an unhandled signal is " "delivered to a thread, then it will affect (terminate, stop, continue, be " "ignored in) all members of the thread group." msgstr "" "Les gestions de signaux sont définies au niveau des processus\\ : si un " "signal sans gestionnaire est reçu par un thread, il affectera (tuera, " "stoppera, relancera, ou sera ignoré par) tous les membres du groupe de " "threads." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Each thread has its own signal mask, as set by B(2)." msgstr "" "Chaque thread a son propre masque de signal, tel que défini par " "B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A signal may be process-directed or thread-directed. A process-directed " "signal is targeted at a thread group (i.e., a TGID), and is delivered to an " "arbitrarily selected thread from among those that are not blocking the " "signal. A signal may be process-directed because it was generated by the " "kernel for reasons other than a hardware exception, or because it was sent " "using B(2) or B(3). A thread-directed signal is targeted " "at (i.e., delivered to) a specific thread. A signal may be thread directed " "because it was sent using B(2) or B(3), or " "because the thread executed a machine language instruction that triggered a " "hardware exception (e.g., invalid memory access triggering B or a " "floating-point exception triggering B)." msgstr "" "Un signal peut être adressé à un processus ou à un thread. S'il s'adresse à " "un processus, il cible un groupe de threads (c'est-à-dire un TGID), et il " "est envoyé à un thread choisi arbitrairement parmi ceux ne bloquant pas les " "signaux. Un signal peut s'adresser à un processus car il est généré par le " "noyau pour d'autres raisons qu'une exception matérielle, ou parce qu'il a " "été envoyé en utilisant B(2) ou B(3). Si un signal s'adresse " "à un thread, il cible (donc est envoyé) à un thread spécifique. Un signal " "peut s'adresser à un thread du fait d'un envoi par B(2) ou " "B(3), ou parce que le thread a exécuté une instruction en " "langage machine qui a provoqué une exception matérielle (comme un accès non " "valable en mémoire, provoquant B, ou une exception de virgule " "flottante provoquant un B)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A call to B(2) returns a signal set that is the union of the " "pending process-directed signals and the signals that are pending for the " "calling thread." msgstr "" "Un appel à B(2) renvoie un jeu de signaux qui réunit les signaux " "en attente adressés au processus et ceux en attente pour le thread appelant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If a process-directed signal is delivered to a thread group, and the thread " "group has installed a handler for the signal, then the handler is invoked in " "exactly one, arbitrarily selected member of the thread group that has not " "blocked the signal. If multiple threads in a group are waiting to accept " "the same signal using B(2), the kernel will arbitrarily select " "one of these threads to receive the signal." msgstr "" "Si un signal adressé à un processus est envoyé à un groupe de threads, et si " "le groupe a installé un gestionnaire pour ce signal, alors le gestionnaire " "sera exécuté exactement dans un des membres du groupe de threads, choisi de " "façon arbitraire parmi ceux qui n'ont pas bloqué ce signal. Si plusieurs " "threads dans un groupe attendent le même signal en utilisant " "B(2), le noyau choisira arbitrairement l'un d'entre eux pour " "recevoir le signal." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "B (depuis Linux 2.5.46)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is specified, then a tracing process cannot force " "B on this child process." msgstr "" "Si l'attribut B est positionné, alors un processus traçant " "le parent ne peut pas forcer B pour cet enfant." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.2)" msgstr "B (depuis Linux 2.2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the execution of the calling process is suspended " "until the child releases its virtual memory resources via a call to " "B(2) or B<_exit>(2) (as with B(2))." msgstr "" "Si le bit B est actif, l'exécution du processus appelant est " "suspendue jusqu'à ce que l'enfant libère ses ressources de mémoire virtuelle " "par un appel B(2) ou B<_exit>(2) (comme avec B(2))." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is not set, then both the calling process and the child " "are schedulable after the call, and an application should not rely on " "execution occurring in any particular order." msgstr "" "Si B n'est pas indiqué, alors les deux processus sont " "ordonnancés à partir de la fin de l'appel, et l'application ne devrait pas " "considérer que l'ordre d'exécution est déterminé dans un ordre particulier." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.0)" msgstr "B (depuis Linux 2.0)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is set, the calling process and the child process run in the " "same memory space. In particular, memory writes performed by the calling " "process or by the child process are also visible in the other process. " "Moreover, any memory mapping or unmapping performed with B(2) or " "B(2) by the child or calling process also affects the other process." msgstr "" "Si le bit B est actif, le processus appelant et le processus " "enfant s'exécutent dans le même espace mémoire. En particulier, les " "écritures en mémoire effectuées par l'un des processus sont visibles par " "l'autre. De même toute projection en mémoire, ou toute suppression de " "projection, effectuée avec B(2) ou B(2) par l'un des processus " "affectera également l'autre processus." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B is not set, the child process runs in a separate copy of the " "memory space of the calling process at the time of the clone call. Memory " "writes or file mappings/unmappings performed by one of the processes do not " "affect the other, as with B(2)." msgstr "" "Si B n'est pas actif, le processus enfant utilisera une copie " "distincte de l'espace mémoire de l'appelant au moment de l'appel clone. Les " "écritures ou les associations/désassociations de fichiers en mémoire " "effectuées par un processus n'affectent pas l'autre processus, comme cela se " "passe avec B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the B flag is specified and the B flag is not " "specified, then any alternate signal stack that was established by " "B(2) is cleared in the child process." msgstr "" "Si l'attribut B est indiqué et si l'attribut B ne " "l'est pas, toute autre pile de signal mise en place par B(2) " "sera vidée dans le processus enfant." #. 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" #. gettid(2) returns current->pid; #. getpid(2) returns current->tgid; #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On success, the thread ID of the child process is returned in the caller's " "thread of execution. On failure, -1 is returned in the caller's context, no " "child process is created, and I is set to indicate the error." msgstr "" "En cas de réussite, le TID du processus enfant est renvoyé dans le thread " "d'exécution de l'appelant. En cas d'échec, B<-1> est renvoyé dans le " "contexte de l'appelant, aucun enfant n'est créé, et I sera positionné " "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 (B() only)" msgstr "B (B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in I, but the restrictions " "(described in B(7)) on placing the child process into the version " "2 cgroup referred to by I are not met." msgstr "" "B était indiqué dans I, mais les " "restrictions à la mise en place d'un processus enfant dans un " "cgroup version 2 auquel se rapporte I (décrites dans " "B(7)) ne sont pas respectées." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Too many processes are already running; see B(2)." msgstr "Trop de processus en cours d'exécution. Consultez B(2)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (B() only)" msgstr "B (B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in I, but the file " "descriptor specified in I refers to a version 2 cgroup in " "which a domain controller is enabled." msgstr "" "B était indiqué dans I, mais le " "descripteur de fichier indiqué dans I se rapporte à un " "cgroup version 2 où un contrôleur de domaine est activé." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (B() only)" msgstr "B (B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "One (or more) of the PIDs specified in I already exists in the " "corresponding PID namespace." msgstr "" "Un (ou plusieurs) PID indiqué dans le I existe déjà dans l'espace " "de noms PID correspondant." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Both B and B were specified in the " "I mask." msgstr "" "Tant B que B ont été indiqués dans le " "masque I." #. Precisely: Linux 2.6.0-test6 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but B was " "not. (Since Linux 2.6.0.)" msgstr "" "B a été spécifié dans le masque I, mais pas " "B (depuis Linux 2.6.0)." #. .TP #. .B EINVAL #. Precisely one of #. .B CLONE_DETACHED #. and #. .B CLONE_THREAD #. was specified. #. (Since Linux 2.6.0-test6.) #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but B was " "not. (Since Linux 2.5.35.)" msgstr "" "B a été spécifié dans le masque I, mais pas " "B (depuis Linux 2.5.35)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but the current process " "previously called B(2) with the B flag or used " "B(2) to reassociate itself with a PID namespace." msgstr "" "B a été indiqué dans le masque I mais le processus " "actuel avait appelé B(2) avec l'attribut B ou il " "utilisait B(2) pour se réassocier à l'espace de noms PID." #. commit e66eded8309ebf679d3d3c1f5820d1f2ca332c71 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Both B and B were specified in the I mask." msgstr "" "Tant B que B ont été indiqués dans le masque I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.9)" msgstr "B (depuis Linux 3.9)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Both B and B were specified in the I mask." msgstr "" "Tant B que B ont été indiqués dans le masque " "I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Both B and B were specified in the I " "mask." msgstr "" "Tant B que B ont été indiqués dans le masque " "I." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B and one (or both) of B or B were " "specified in the I mask." msgstr "" "B et B ou B, seuls ou ensemble,ont " "été indiqués dans le masque I." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B and B were specified in the I mask." msgstr "" "B et B ont été indiqués dans le masque I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.32)" msgstr "B (depuis Linux 2.6.32)" #. commit 123be07b0b399670a7cc3d82fef0cb4f93ef885c #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B was specified, and the caller is an init process." msgstr "" "B a été spécifié et l'appelant est un processus " "d'initialisation." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Returned by the glibc B() wrapper function when I or I is " "specified as NULL." msgstr "" "Renvoyée par l'enveloppe glibc de B() quand I ou I valent " "NULL." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but the kernel was not " "configured with the B and B options." msgstr "" "B a été spécifié dans le masque I, mais le noyau n'a " "pas été configuré avec les options B et B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but the kernel was not " "configured with the B option." msgstr "" "B a été spécifié dans le masque I, mais le noyau n'a " "pas été configuré avec l'option B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but the kernel was not " "configured with the B option." msgstr "" "B a été spécifié dans le masque I, mais le noyau n'a " "pas été configuré avec l'option B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but the kernel was not " "configured with the B option." msgstr "" "B a été spécifié dans le masque I, mais le noyau n'a " "pas été configuré avec l'option B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but the kernel was not " "configured with the B option." msgstr "" "B a été spécifié dans le masque I, mais le noyau n'a " "pas été configuré avec l'option B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "I is not aligned to a suitable boundary for this architecture. For " "example, on aarch64, I must be a multiple of 16." msgstr "" "I n'est pas alignée sur une limite adaptée à cette architecture. Par " "exemple, sur aarch64, I doit être un multiple de 16." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (B() only)" msgstr "B (B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B was specified in the I mask." msgstr "B a été spécifié dans le masque I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (B() only)" msgstr "B (B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified together with B in the I " "mask." msgstr "" "B a été indiqué avec B dans le masque I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified together with B in the I " "mask." msgstr "" "B a été indiqué avec B dans le masque I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B(B() only)" msgstr "B(B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified together with B in the " "I mask." msgstr "" "B a été indiqué avec B dans le masque " "I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I is greater than the number of nested PID namespaces." msgstr "" "I est supérieur au nombre de niveaux dans l'espace de noms PID." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "One of the PIDs specified in I was an invalid." msgstr "Un des PID indiqué dans I n'était pas valable." #. commit 7f192e3cd316ba58c88dfa26796cf77789dd9872 #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B or B was specified in the I mask, but a " "signal was specified in I." msgstr "" "B ou B ont été spécifiés dans le masque " "I, mais un signal a été spécifié dans I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (AArch64 only, Linux 4.6 and earlier)" msgstr "B (AArch64 seulement, Linux 4.6 et antérieur)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I was not aligned to a 128-bit boundary." msgstr "I n'était pas aligné sur une limite de 128 bits." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Cannot allocate sufficient memory to allocate a task structure for the " "child, or to copy those parts of the caller's context that need to be copied." msgstr "" "Pas assez de mémoire pour copier les parties du contexte du processus " "appelant qui doivent être dupliquées, ou pour allouer une structure de tâche " "pour le processus enfant." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.7)" msgstr "B (depuis Linux 3.7)" #. commit f2302505775fd13ba93f034206f1e2a587017929 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but the limit on the " "nesting depth of PID namespaces would have been exceeded; see " "B(7)." msgstr "" "B a été spécifié dans le masque I, et l'appel " "provoquerait un dépassement de la limite du nombre maximal d'espaces de noms " "utilisateur imbriqués. Consultez B(7)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 4.9; beforehand B)" msgstr "B (depuis Linux 4.9 ; auparavant B)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, and the call would " "cause the limit on the number of nested user namespaces to be exceeded. See " "B(7)." msgstr "" "B a été spécifié dans le masque I, et l'appel " "provoquerait un dépassement de la limite du nombre maximal d'espaces de noms " "utilisateur imbriqués. Consultez B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "From Linux 3.11 to Linux 4.8, the error diagnosed in this case was B." msgstr "" "De Linux 3.11 à Linux 4.8, l'erreur indiquée dans ce cas était B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 4.9)" msgstr "B (depuis Linux 4.9)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "One of the values in the I mask specified the creation of a new user " "namespace, but doing so would have caused the limit defined by the " "corresponding file in I to be exceeded. For further " "details, see B(7)." msgstr "" "Une des valeurs dans le masque I indiquait de créer un nouvel espace " "de noms utilisateur, mais cela aurait provoqué un dépassement de la limite " "définie par le fichier correspondant dans I. Pour plus de " "détails, voir B(7)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (B() only)" msgstr "B (B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in I, but the file " "descriptor specified in I refers to a version 2 cgroup that " "is in the I state." msgstr "" "B était indiqué dans I, mais le " "descripteur de fichier indiqué dans I se rapporte à un " "cgroup version 2 dont l'état est I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B, B, B, B, " "B, or B was specified by an unprivileged process " "(process without B)." msgstr "" "B, B, B, B, " "B ou B a été spécifié par un processus non " "privilégié (processus sans B)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified by a process other than process 0. (This error " "occurs only on Linux 2.5.15 and earlier.)" msgstr "" "B a été spécifié par un processus autre que le processus 0 (cette " "erreur n'arrive que sur Linux 2.5.15 et antérieurs)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, but either the " "effective user ID or the effective group ID of the caller does not have a " "mapping in the parent namespace (see B(7))." msgstr "" "B a été spécifié dans le masque I, mais l'identifiant " "utilisateur effectif ou l'identifiant de groupe effectif de l'appelant n'a " "pas de correspondance dans l'espace de noms parent (consultez " "B(7))." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.9)" msgstr "B (depuis Linux 3.9)" #. commit 3151527ee007b73a0ebd296010f1c0454a919c7d #. FIXME What is the rationale for this restriction? #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask and the caller is in a " "chroot environment (i.e., the caller's root directory does not match the " "root directory of the mount namespace in which it resides)." msgstr "" "B a été spécifié dans le masque I et l'appelant se " "trouve dans un environnement chroot (c'est-à-dire que le répertoire racine " "de l'appelant ne correspond pas au répertoire racine de l'espace de noms de " "montage dans lequel il se trouve)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (B() only)" msgstr "B (B() seulement)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "I was greater than zero, and the caller lacks the " "B capability in one or more of the user namespaces that own " "the corresponding PID namespaces." msgstr "" "I était supérieur à zéro et l'appelant n'a pas la capacité " "B dans un ou plusieurs des espaces de noms utilisateur qui " "possèdent les espaces de noms PID correspondants." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.17)" msgstr "B (depuis Linux 2.6.17)" #. commit 4a2c7a7837da1b91468e50426066d988050e4d56 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "System call was interrupted by a signal and will be restarted. (This can be " "seen only during a trace.)" msgstr "" "L'appel système a été interrompu par un signal et va être redémarré (cela " "n'est visible qu'à l'occasion d'un B())." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (Linux 3.11 to Linux 4.8)" msgstr "B (Linux 3.11 à Linux 4.8)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was specified in the I mask, and the limit on the " "number of nested user namespaces would be exceeded. See the discussion of " "the B error above." msgstr "" "B a été spécifié dans le masque I, et l'appel " "provoquerait un dépassement de la limite du nombre maximal d'espaces de noms " "utilisateur imbriqués. Voir le point sur l'erreur B ci-dessus." #. 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-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The glibc B() wrapper function makes some changes in the memory " "pointed to by I (changes required to set the stack up correctly for " "the child) I invoking the B() system call. So, in cases " "where B() is used to recursively create children, do not use the " "buffer employed for the parent's stack as the stack of the child." msgstr "" "La fonction enveloppe B() de la glibc effectue des changements dans " "la mémoire vers laquelle pointe I (ce sont des changements " "nécessaires pour positionner correctement la pile pour l'enfant) I de " "recourir à l'appel système B(). Dès lors, lorsque B() est " "utilisé pour créer des enfants de manière récursive, n'utilisez pas le " "tampon servant à la pile du parent en tant que pile de l'enfant." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On i386, B() should not be called through vsyscall, but directly " "through I." msgstr "" "Sur i386, B() ne devrait pas être appelé à l’aide de vsyscall, mais " "directement en utilisant I." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "C library/kernel differences" msgstr "Différences entre bibliothèque C et noyau" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The raw B() system call corresponds more closely to B(2) in " "that execution in the child continues from the point of the call. As such, " "the I and I arguments of the B() wrapper function are " "omitted." msgstr "" "L'appel système B brut ressemble plus à B(2), en ceci que " "l'exécution dans le processus enfant continue à partir du point d'appel. À " "ce titre, les arguments I et I de la fonction enveloppe de " "B() sont omis." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In contrast to the glibc wrapper, the raw B() system call accepts " "NULL as a I argument (and B() likewise allows I to be NULL). In this case, the child uses a duplicate of the " "parent's stack. (Copy-on-write semantics ensure that the child gets " "separate copies of stack pages when either process modifies the stack.) In " "this case, for correct operation, the B option should not be " "specified. (If the child I the parent's memory because of the use " "of the B flag, then no copy-on-write duplication occurs and chaos " "is likely to result.)" msgstr "" "Contrairement à l'enveloppe de la glibc, l'appel système brut B() " "accepte NULL en paramètre de I (et de même, B() permet à " "I d'être NULL). Dans ce cas l'enfant utilise une copie de la " "pile du parent (la sémantique de copie-en-écriture assure que l'enfant " "recevra une copie indépendante des pages de la pile dès qu'un des deux " "processus la modifiera). Pour que cela fonctionne, il faut naturellement que " "B ne soit pas présent (si l'enfant I la mémoire du parent " "du fait d'une utilisation de B, aucune duplication à l’aide de la " "copie-en-écriture ne se produit et il peut s'ensuivre probablement un grand " "chaos)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The order of the arguments also differs in the raw system call, and there " "are variations in the arguments across architectures, as detailed in the " "following paragraphs." msgstr "" "L'ordre des paramètres change aussi dans l'appel système brut et des " "variations existent dans les paramètres en fonction des architectures, comme " "indiqué dans les paragraphes suivants." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The raw system call interface on x86-64 and some other architectures " "(including sh, tile, and alpha) is:" msgstr "" "L'interface de l'appel système brut sur des architectures x86-64 et quelques " "autres (dont sh, tile et alpha), est :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<, void *>IB<,>\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" msgstr "" "BIB<, void *>IB<,>\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" #. CONFIG_CLONE_BACKWARDS #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On x86-32, and several other common architectures (including score, ARM, ARM " "64, PA-RISC, arc, Power PC, xtensa, and MIPS), the order of the last two " "arguments is reversed:" msgstr "" "Sur x86-32 et d'autres architectures classiques (dont score, ARM, ARM 64, PA-" "RISC, arc, Power PC, xtensa et MIPS), l'ordre des deux derniers paramètres " "est inversé :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<, void *>IB<,>\n" "B< int *>IB<, unsigned long >IB<,>\n" "B< int *>IB<);>\n" msgstr "" "BIB<, void *>IB<,>\n" "B< int *>IB<, unsigned long >IB<,>\n" "B< int *>IB<);>\n" #. CONFIG_CLONE_BACKWARDS2 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On the cris and s390 architectures, the order of the first two arguments is " "reversed:" msgstr "" "Sur les architectures cris et s390, l'ordre des deux premiers paramètres est " "inversé :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<, unsigned long >IB<,>\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" msgstr "" "BIB<, unsigned long >IB<,>\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" #. CONFIG_CLONE_BACKWARDS3 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "On the microblaze architecture, an additional argument is supplied:" msgstr "Sur l'architecture microblaze, il existe un paramètre supplémentaire :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<, void *>IB<,>\n" "B< int >IB<,> /* Size of stack */\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" msgstr "" "BIB<, void *>IB<,>\n" "B< int >IB<,> /* Taille de la pile */\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "blackfin, m68k, and sparc" msgstr "blackfin, m68k, et sparc" #. Mike Frysinger noted in a 2013 mail: #. these arches don't define __ARCH_WANT_SYS_CLONE: #. blackfin ia64 m68k sparc #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The argument-passing conventions on blackfin, m68k, and sparc are different " "from the descriptions above. For details, see the kernel (and glibc) source." msgstr "" "Les conventions de passage des arguments sur blackfin, m68k et sparc sont " "différentes de celles décrites précédemment. Pour plus de détails, se " "référer aux sources du noyau (et de la glibc)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ia64" msgstr "ia64" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "On ia64, a different interface is used:" msgstr "Sur ia64, une interface différente est utilisée\\ :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<)(void *),>\n" "B< void *>IB<, size_t >IB<,>\n" "B< int >IB<, void *>IB<, ...>\n" "B< /* pid_t *>IB<, struct user_desc *>IB<,>\n" "B< pid_t *>IB< */ );>\n" msgstr "" "BIB<)(void *),>\n" "B< void *>IB<, size_t >IB<,>\n" "B< int >IB<, void *>IB<, ...>\n" "B< /* pid_t *>IB<, struct user_desc *>IB<,>\n" "B< pid_t *>IB< */ );>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The prototype shown above is for the glibc wrapper function; for the system " "call itself, the prototype can be described as follows (it is identical to " "the B() prototype on microblaze):" msgstr "" "Le prototype présenté ci-dessus vaut pour la fonction enveloppe de la " "glibc ; pour l'appel système lui-même, il peut être décrit comme suit (il " "est identique au prototype B() sur microblaze) :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<, void *>IB<,>\n" "B< int >IB<,> /* Size of stack */\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" msgstr "" "BIB<, void *>IB<,>\n" "B< int >IB<,> /* Taille de la pile */\n" "B< int *>IB<, int *>IB<,>\n" "B< unsigned long >IB<);>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B<__clone2>() operates in the same way as B(), except that " "I points to the lowest address of the child's stack area, and " "I specifies the size of the stack pointed to by I." msgstr "" "B<__clone2>() fonctionne comme B(), sauf que I pointe sur " "la plus petite adresse de la pile de l'enfant et que I indique " "la taille de la pile sur laquelle pointe I." #. 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 "Linux." msgstr "Linux." #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "HISTORIQUE" #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. There is no entry for #. .BR clone () #. in libc5. #. glibc2 provides #. .BR clone () #. as described in this manual page. #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "Linux 5.3." msgstr "Linux 5.3." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Linux 2.4 and earlier" msgstr "Linux 2.4 et antérieurs" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In the Linux 2.4.x series, B generally does not make the " "parent of the new thread the same as the parent of the calling process. " "However, from Linux 2.4.7 to Linux 2.4.18 the B flag implied " "the B flag (as in Linux 2.6.0 and later)." msgstr "" "Dans les séries 2.4.x de Linux, B ne fait en général pas du " "processus parent du nouveau thread un processus identique au parent du " "processus appelant. Cependant, de Linux 2.4.7 à Linux 2.4.18, l'attribut " "B impliquait B (de même que dans Linux 2.6.0 et " "supérieurs)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In Linux 2.4 and earlier, B() does not take arguments I, " "I, and I." msgstr "" "Sous Linux\\ 2.4 et plus anciens, B() ne prend pas les paramètres " "I, I, et I." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NOTES" msgstr "NOTES" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "One use of these system calls is to implement threads: multiple flows of " "control in a program that run concurrently in a shared address space." msgstr "" "Une utilisation de ces appels système consiste à implémenter des threads\\ : " "un programme est scindé en plusieurs lignes de contrôle, s'exécutant " "simultanément dans un espace mémoire partagée." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B(2) system call can be used to test whether two processes share " "various resources such as a file descriptor table, System V semaphore undo " "operations, or a virtual address space." msgstr "" "L'appel système B(2) peut être utilisé pour vérifier si deux " "processus partagent des ressources, telles qu'une table de descripteurs de " "fichier, des opérations Annuler le sémaphore sur System V, ou un espace " "d'adressage virtuel." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Handlers registered using B(3) are not executed during a " "clone call." msgstr "" "Les gestionnaires enregistrés en utilisant B(3) ne sont pas " "exécutés pendant un appel clone." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "BOGUES" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "GNU C library versions 2.3.4 up to and including 2.24 contained a wrapper " "function for B(2) that performed caching of PIDs. This caching " "relied on support in the glibc wrapper for B(), but limitations in " "the implementation meant that the cache was not up to date in some " "circumstances. In particular, if a signal was delivered to the child " "immediately after the B() call, then a call to B(2) in a " "handler for the signal could return the PID of the calling process (\"the " "parent\"), if the clone wrapper had not yet had a chance to update the PID " "cache in the child. (This discussion ignores the case where the child was " "created using B, when B(2) I return the same " "value in the child and in the process that called B(), since the " "caller and the child are in the same thread group. The stale-cache problem " "also does not occur if the I argument includes B.) To get " "the truth, it was sometimes necessary to use code such as the following:" msgstr "" "Les versions de la bibliothèque C GNU jusqu'à la 2.24 comprise contenaient " "une fonction enveloppe pour B(2) qui effectuait un cache des PID. Ce " "cache nécessitait une prise en charge par l'enveloppe de B() de la " "glibc, mais des limites dans l'implémentation faisaient que le cache pouvait " "ne pas être à jour sous certaines circonstances. En particulier, si un " "signal était distribué à un enfant juste après l'appel à B(), alors " "un appel à B(2) dans le gestionnaire de signaux du signal pouvait " "renvoyer le PID du processus appelant (le parent), si l'enveloppe de clone " "n'avait toujours pas eu le temps de mettre le cache de PID à jour pour " "l'enfant. (Ce point ignore le cas où l'enfant a été créé en utilisant " "B, quand B(2) I renvoyer la même valeur pour " "l'enfant et pour le processus qui a appelé B(), puisque l'appelant et " "l'enfant se trouvent dans le même groupe de threads. Ce problème de cache " "n'apparaît pas non plus si le paramètre I contient B.) Pour " "obtenir la véritable valeur, il peut être nécessaire d'utiliser quelque " "chose comme ceci :" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Esyscall.hE\n" "\\&\n" "pid_t mypid;\n" "\\&\n" "mypid = syscall(SYS_getpid);\n" msgstr "" "#include Esyscall.hE\n" "\\&\n" "pid_t mypid;\n" "\\&\n" "mypid = syscall(SYS_getpid);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Because of the stale-cache problem, as well as other problems noted in " "B(2), the PID caching feature was removed in glibc 2.25." msgstr "" "Suite à un problème de cache ancien, ainsi qu'à d'autres problèmes traités " "dans B(2), la fonctionnalité de mise en cache du PID a été supprimée " "de la glibc 2.25." #. 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 following program demonstrates the use of B() to create a child " "process that executes in a separate UTS namespace. The child changes the " "hostname in its UTS namespace. Both parent and child then display the " "system hostname, making it possible to see that the hostname differs in the " "UTS namespaces of the parent and child. For an example of the use of this " "program, see B(2)." msgstr "" "Le programme suivant décrit l'usage de B() dans le but de créer un " "processus enfant qui s'exécute dans un espace de noms UTS distinct. Le " "processus enfant change le nom d'hôte (hostname) dans son propre espace UTS. " "Les processus parent et enfant affichent chacun le nom d'hôte qui leur " "correspond, permettant ainsi de constater la différence des noms d'hôtes " "dans leurs espaces de noms UTS respectifs. Pour un exemple d’utilisation de " "ce programme, consultez B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Within the sample program, we allocate the memory that is to be used for the " "child's stack using B(2) rather than B(3) for the following " "reasons:" msgstr "" "Dans le programme d'exemple, nous allouons la mémoire qui doit être utilisée " "pour la pile de l'enfant en utilisant B(2) au lieu de B(3) " "pour les raisons suivantes :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B(2) allocates a block of memory that starts on a page boundary and " "is a multiple of the page size. This is useful if we want to establish a " "guard page (a page with protection B) at the end of the stack " "using B(2)." msgstr "" "B(2) alloue un bloc de mémoire commençant à la limite d'une page et " "qui est un multiple de la taille de la page. Cela est utile si on veut " "établir une page de protection (avec B) à la fin de la pile en " "utilisant B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "We can specify the B flag to request a mapping that is suitable " "for a stack. For the moment, this flag is a no-op on Linux, but it exists " "and has effect on some other systems, so we should include it for " "portability." msgstr "" "On peut indiquer l'attribut B pour demander une association " "adaptée à une pile. Pour le moment, cet attribut n'est pas opérationnel sur " "Linux, mais il existe et a des effets sur d'autres systèmes, donc on doit " "l'inclure pour la portabilité." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Program source" msgstr "Source du programme" #. type: Plain text #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "" "#define _GNU_SOURCE\n" "#include Eerr.hE\n" "#include Esched.hE\n" "#include Esignal.hE\n" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/mman.hE\n" "#include Esys/types.hE\n" "#include Esys/utsname.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" "\\&\n" "static int /* Start function for cloned child */\n" "childFunc(void *arg)\n" "{\n" " struct utsname uts;\n" "\\&\n" " /* Change hostname in UTS namespace of child. */\n" "\\&\n" " if (sethostname(arg, strlen(arg)) == -1)\n" " err(EXIT_FAILURE, \"sethostname\");\n" "\\&\n" " /* Retrieve and display hostname. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename in child: %s\\en\", uts.nodename);\n" "\\&\n" " /* Keep the namespace open for a while, by sleeping.\n" " This allows some experimentation--for example, another\n" " process might join the namespace. */\n" "\\&\n" " sleep(200);\n" "\\&\n" " return 0; /* Child terminates now */\n" "}\n" "\\&\n" "#define STACK_SIZE (1024 * 1024) /* Stack size for cloned child */\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *stack; /* Start of stack buffer */\n" " char *stackTop; /* End of stack buffer */\n" " pid_t pid;\n" " struct utsname uts;\n" "\\&\n" " if (argc E 2) {\n" " fprintf(stderr, \"Usage: %s Echild-hostnameE\\en\", argv[0]);\n" " exit(EXIT_SUCCESS);\n" " }\n" "\\&\n" " /* Allocate memory to be used for the stack of the child. */\n" "\\&\n" " stack = mmap(NULL, STACK_SIZE, PROT_READ | PROT_WRITE,\n" " MAP_PRIVATE | MAP_ANONYMOUS | MAP_STACK, -1, 0);\n" " if (stack == MAP_FAILED)\n" " err(EXIT_FAILURE, \"mmap\");\n" "\\&\n" " stackTop = stack + STACK_SIZE; /* Assume stack grows downward */\n" "\\&\n" " /* Create child that has its own UTS namespace;\n" " child commences execution in childFunc(). */\n" "\\&\n" " pid = clone(childFunc, stackTop, CLONE_NEWUTS | SIGCHLD, argv[1]);\n" " if (pid == -1)\n" " err(EXIT_FAILURE, \"clone\");\n" " printf(\"clone() returned %jd\\en\", (intmax_t) pid);\n" "\\&\n" " /* Parent falls through to here */\n" "\\&\n" " sleep(1); /* Give child time to change its hostname */\n" "\\&\n" " /* Display hostname in parent\\[aq]s UTS namespace. This will be\n" " different from hostname in child\\[aq]s UTS namespace. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename in parent: %s\\en\", uts.nodename);\n" "\\&\n" " if (waitpid(pid, NULL, 0) == -1) /* Wait for child */\n" " err(EXIT_FAILURE, \"waitpid\");\n" " printf(\"child has terminated\\en\");\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "#define _GNU_SOURCE\n" "#include Eerr.hE\n" "#include Esched.hE\n" "#include Esignal.hE\n" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/mman.hE\n" "#include Esys/types.hE\n" "#include Esys/utsname.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" "\\&\n" "static int /* Commencer la fonction pour l'enfant cloné */\n" "childFunc(void *arg)\n" "{\n" " struct utsname uts;\n" "\\&\n" " /* Modifier le nom d'hôte dans l'espace de noms UTS de l'enfant. */\n" "\\&\n" " if (sethostname(arg, strlen(arg)) == -1)\n" " err(EXIT_FAILURE, \"sethostname\");\n" "\\&\n" " /* Récupérer et afficher le nom d'hôte. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename dans l'enfant : %s\\en\", uts.nodename);\n" "\\&\n" " /* Rester en sommeil (fonction sleep) pour conserver l'espace\n" " de noms ouvert pendant un moment. Cela permet de réaliser\n" " quelques expérimentations — par exemple, un autre processus\n" " pourrait rejoindre l'espace de noms. */\n" "\\&\n" " sleep(200);\n" "\\&\n" " return 0; /* Le processus enfant se termine à ce moment */\n" "}\n" "\\&\n" "#define STACK_SIZE (1024 * 1024) /* Taille de la pile pour \n" " l'enfant cloné */\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *stack; /* Début du tampon de la pile */\n" " char *stackTop; /* Fin du tampon de la pile */\n" " pid_t pid;\n" " struct utsname uts;\n" "\\&\n" " if (argc E 2) {\n" " fprintf(stderr, \"Utilisation : %s Enom_d_hôte-enfantE\\en\", argv[0]);\n" " exit(EXIT_SUCCESS);\n" " }\n" "\\&\n" " /* Allouer la mémoire à utiliser pour la pile du processus enfant. */\n" "\\&\n" " stack = mmap(NULL, STACK_SIZE, PROT_READ | PROT_WRITE,\n" " MAP_PRIVATE | MAP_ANONYMOUS | MAP_STACK, -1, 0);\n" " if (stack == MAP_FAILED)\n" " err(EXIT_FAILURE, \"mmap\");\n" "\\&\n" " stackTop = stack + STACK_SIZE; /* On suppose que la pile grandit vers\n" " le bas */\n" "\\&\n" " /* Créer un processus enfant disposant de son propre\n" " espace de noms UTS ; le processus enfant débute\n" " son exécution dans childFunc(). */\n" "\\&\n" " pid = clone(childFunc, stackTop, CLONE_NEWUTS | SIGCHLD, argv[1]);\n" " if (pid == -1)\n" " err(EXIT_FAILURE, \"clone\");\n" " printf(\"clone() a renvoyé %jd\\en\", (intmax_t) pid);\n" "\\&\n" " /* Le parent se retrouve ici */\n" "\\&\n" " sleep(1); /* Laisser le temps au processus enfant de\n" " changer son nom d'hôte */\n" "\\&\n" " /* Afficher le nom d'hôte pour l'espace de noms UTS du processus parent.\n" " Celui-ci sera différent du nom d'hôte pour l'espace de noms UTS du\n" " processus enfant. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename dans le parent : %s\\en\", uts.nodename);\n" "\\&\n" " if (waitpid(pid, NULL, 0) == -1) /* Attendre le processus enfant */\n" " err(EXIT_FAILURE, \"waitpid\");\n" " printf(\"Fin du processus enfant\\en\");\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" #. SRC END #. 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(2), B(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(7), " "B(7), B(7)" msgstr "" "B(2), B(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(7), " "B(7), B(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 opensuse-leap-15-6 msgid "" "In the remainder of this page, the terminology \"the clone call\" is used " "when noting details that apply to all of these interfaces," msgstr "" "Dans la suite de cette page, le terme « appel clone » est utilisé pour " "évoquer les détails applicables à toutes ces interfaces," #. type: Plain text #: debian-bookworm opensuse-leap-15-6 msgid "" "The I mask is specified as a bitwise-OR of zero or more of the " "constants listed below. Except as noted below, these flags are available " "(and have the same effect) in both B() and B()." msgstr "" "Le masque I est indiqué comme un OU bit à bit de zéro ou plus des " "constantes ci-dessous. Sauf explicitement indiqués, ces attributs sont " "disponibles (et ont le même effet) dans B() et dans B()." #. commit b612e5df4587c934bd056bf05f4a1deca4de4f75 #. type: Plain text #: debian-bookworm opensuse-leap-15-6 msgid "" "By default, signal dispositions in the child thread are the same as in the " "parent. If this flag is specified, then all signals that are handled in the " "parent are reset to their default dispositions (B) in the child." msgstr "" "Par défaut, l'état des signaux du thread de l'enfant est le même que celui " "du parent. Si cet attribut est positionné, tous les signaux gérés par le " "parent sont réinitialisés à leur état par défaut (B) dans l'enfant." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 msgid "" "Only a privileged process (B) can employ B. " "This flag can't be specified in conjunction with B or " "B." msgstr "" "Seul un processus disposant de privilèges (B) peut utiliser " "B. Cet attribut ne peut pas être utilisé en association avec " "B ou avec B." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 msgid "" "One (or both) of B or B and one (or both) of " "B or B were specified in the I mask." msgstr "" "B ou B, et B ou B, " "ont été indiqués, seuls ou ensemble, dans le masque I." #. There is no entry for #. .BR clone () #. in libc5. #. glibc2 provides #. .BR clone () #. as described in this manual page. #. type: Plain text #: debian-bookworm msgid "The B() system call first appeared in Linux 5.3." msgstr "" "L'appel système B() est apparu pour la première fois dans Linux 5.3." #. type: Plain text #: debian-bookworm msgid "" "These system calls are Linux-specific and should not be used in programs " "intended to be portable." msgstr "" "Ces appels système sont spécifiques à Linux et ne doivent pas être utilisés " "dans des programmes conçus pour être portables." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "One use of these systems calls is to implement threads: multiple flows of " "control in a program that run concurrently in a shared address space." msgstr "" "Une utilisation de ces appels système consiste à implémenter des threads\\ : " "un programme est scindé en plusieurs lignes de contrôle, s'exécutant " "simultanément dans un espace mémoire partagée." #. type: Plain text #: debian-bookworm msgid "" "Note that the glibc B() wrapper function makes some changes in the " "memory pointed to by I (changes required to set the stack up " "correctly for the child) I invoking the B() system call. " "So, in cases where B() is used to recursively create children, do " "not use the buffer employed for the parent's stack as the stack of the child." msgstr "" "Remarquez que la fonction enveloppe B() de la glibc effectue des " "changements dans la mémoire vers laquelle pointe I (ce sont des " "changements nécessaires pour positionner correctement la pile pour l'enfant) " "I de recourir à l'appel système B(). Dès lors, lorsque " "B() est utilisé pour créer des enfants de manière récursive, " "n'utilisez pas le tampon servant à la pile du parent en tant que pile de " "l'enfant." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "#include Esyscall.hE\n" msgstr "#include Esyscall.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "pid_t mypid;\n" msgstr "pid_t mypid;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "mypid = syscall(SYS_getpid);\n" msgstr "mypid = syscall(SYS_getpid);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#define _GNU_SOURCE\n" "#include Eerr.hE\n" "#include Esched.hE\n" "#include Esignal.hE\n" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/mman.hE\n" "#include Esys/utsname.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" msgstr "" "#define _GNU_SOURCE\n" "#include Eerr.hE\n" "#include Esched.hE\n" "#include Esignal.hE\n" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/mman.hE\n" "#include Esys/utsname.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static int /* Start function for cloned child */\n" "childFunc(void *arg)\n" "{\n" " struct utsname uts;\n" msgstr "" "static int /* Commencer la fonction pour l'enfant cloné */\n" "childFunc(void *arg)\n" "{\n" " struct utsname uts;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " /* Change hostname in UTS namespace of child. */\n" msgstr " /* Modifier le nom d'hôte dans l'espace de noms UTS de l'enfant. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (sethostname(arg, strlen(arg)) == -1)\n" " err(EXIT_FAILURE, \"sethostname\");\n" msgstr "" " if (sethostname(arg, strlen(arg)) == -1)\n" " err(EXIT_FAILURE, \"sethostname\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " /* Retrieve and display hostname. */\n" msgstr " /* Récupérer et afficher le nom d'hôte. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename in child: %s\\en\", uts.nodename);\n" msgstr "" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename dans l'enfant : %s\\en\", uts.nodename);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /* Keep the namespace open for a while, by sleeping.\n" " This allows some experimentation--for example, another\n" " process might join the namespace. */\n" msgstr "" " /* Rester en sommeil (fonction sleep) pour conserver l'espace\n" " de noms ouvert pendant un moment. Cela permet de réaliser\n" " quelques expérimentations — par exemple, un autre processus\n" " pourrait rejoindre l'espace de noms. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " sleep(200);\n" msgstr " sleep(200);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " return 0; /* Child terminates now */\n" "}\n" msgstr "" " return 0; /* Le processus enfant se termine à ce moment */\n" "}\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "#define STACK_SIZE (1024 * 1024) /* Stack size for cloned child */\n" msgstr "" "#define STACK_SIZE (1024 * 1024) /* Taille de la pile pour \n" " l'enfant cloné */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *stack; /* Start of stack buffer */\n" " char *stackTop; /* End of stack buffer */\n" " pid_t pid;\n" " struct utsname uts;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *stack; /* Début du tampon de la pile */\n" " char *stackTop; /* Fin du tampon de la pile */\n" " pid_t pid;\n" " struct utsname uts;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (argc E 2) {\n" " fprintf(stderr, \"Usage: %s Echild-hostnameE\\en\", argv[0]);\n" " exit(EXIT_SUCCESS);\n" " }\n" msgstr "" " if (argc E 2) {\n" " fprintf(stderr, \"Utilisation : %s Enom_d_hôte-enfantE\\en\", argv[0]);\n" " exit(EXIT_SUCCESS);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " /* Allocate memory to be used for the stack of the child. */\n" msgstr " /* Allouer la mémoire à utiliser pour la pile du processus enfant. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " stack = mmap(NULL, STACK_SIZE, PROT_READ | PROT_WRITE,\n" " MAP_PRIVATE | MAP_ANONYMOUS | MAP_STACK, -1, 0);\n" " if (stack == MAP_FAILED)\n" " err(EXIT_FAILURE, \"mmap\");\n" msgstr "" " stack = mmap(NULL, STACK_SIZE, PROT_READ | PROT_WRITE,\n" " MAP_PRIVATE | MAP_ANONYMOUS | MAP_STACK, -1, 0);\n" " if (stack == MAP_FAILED)\n" " err(EXIT_FAILURE, \"mmap\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " stackTop = stack + STACK_SIZE; /* Assume stack grows downward */\n" msgstr "" " stackTop = stack + STACK_SIZE; /* On suppose que la pile grandit vers\n" " le bas */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /* Create child that has its own UTS namespace;\n" " child commences execution in childFunc(). */\n" msgstr "" " /* Créer un processus enfant disposant de son propre\n" " espace de noms UTS ; le processus enfant débute\n" " son exécution dans childFunc(). */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " pid = clone(childFunc, stackTop, CLONE_NEWUTS | SIGCHLD, argv[1]);\n" " if (pid == -1)\n" " err(EXIT_FAILURE, \"clone\");\n" " printf(\"clone() returned %jd\\en\", (intmax_t) pid);\n" msgstr "" " pid = clone(childFunc, stackTop, CLONE_NEWUTS | SIGCHLD, argv[1]);\n" " if (pid == -1)\n" " err(EXIT_FAILURE, \"clone\");\n" " printf(\"clone() a renvoyé %jd\\en\", (intmax_t) pid);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " /* Parent falls through to here */\n" msgstr " /* Le parent se retrouve ici */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " sleep(1); /* Give child time to change its hostname */\n" msgstr "" " sleep(1); /* Laisser le temps au processus enfant de\n" " changer son nom d'hôte */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /* Display hostname in parent\\[aq]s UTS namespace. This will be\n" " different from hostname in child\\[aq]s UTS namespace. */\n" msgstr "" " /* Afficher le nom d'hôte pour l'espace de noms UTS du processus parent.\n" " Celui-ci sera différent du nom d'hôte pour l'espace de noms UTS du\n" " processus enfant. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename in parent: %s\\en\", uts.nodename);\n" msgstr "" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename dans le parent : %s\\en\", uts.nodename);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (waitpid(pid, NULL, 0) == -1) /* Wait for child */\n" " err(EXIT_FAILURE, \"waitpid\");\n" " printf(\"child has terminated\\en\");\n" msgstr "" " if (waitpid(pid, NULL, 0) == -1) /* Attendre le processus enfant */\n" " err(EXIT_FAILURE, \"waitpid\");\n" " printf(\"Fin du processus enfant\\en\");\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: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "2023-11-01" msgstr "1 novembre 2023" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Pages du manuel de Linux 6.06" #. type: Plain text #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "" "#define _GNU_SOURCE\n" "#include Eerr.hE\n" "#include Esched.hE\n" "#include Esignal.hE\n" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/mman.hE\n" "#include Esys/utsname.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" "\\&\n" "static int /* Start function for cloned child */\n" "childFunc(void *arg)\n" "{\n" " struct utsname uts;\n" "\\&\n" " /* Change hostname in UTS namespace of child. */\n" "\\&\n" " if (sethostname(arg, strlen(arg)) == -1)\n" " err(EXIT_FAILURE, \"sethostname\");\n" "\\&\n" " /* Retrieve and display hostname. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename in child: %s\\en\", uts.nodename);\n" "\\&\n" " /* Keep the namespace open for a while, by sleeping.\n" " This allows some experimentation--for example, another\n" " process might join the namespace. */\n" "\\&\n" " sleep(200);\n" "\\&\n" " return 0; /* Child terminates now */\n" "}\n" "\\&\n" "#define STACK_SIZE (1024 * 1024) /* Stack size for cloned child */\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *stack; /* Start of stack buffer */\n" " char *stackTop; /* End of stack buffer */\n" " pid_t pid;\n" " struct utsname uts;\n" "\\&\n" " if (argc E 2) {\n" " fprintf(stderr, \"Usage: %s Echild-hostnameE\\en\", argv[0]);\n" " exit(EXIT_SUCCESS);\n" " }\n" "\\&\n" " /* Allocate memory to be used for the stack of the child. */\n" "\\&\n" " stack = mmap(NULL, STACK_SIZE, PROT_READ | PROT_WRITE,\n" " MAP_PRIVATE | MAP_ANONYMOUS | MAP_STACK, -1, 0);\n" " if (stack == MAP_FAILED)\n" " err(EXIT_FAILURE, \"mmap\");\n" "\\&\n" " stackTop = stack + STACK_SIZE; /* Assume stack grows downward */\n" "\\&\n" " /* Create child that has its own UTS namespace;\n" " child commences execution in childFunc(). */\n" "\\&\n" " pid = clone(childFunc, stackTop, CLONE_NEWUTS | SIGCHLD, argv[1]);\n" " if (pid == -1)\n" " err(EXIT_FAILURE, \"clone\");\n" " printf(\"clone() returned %jd\\en\", (intmax_t) pid);\n" "\\&\n" " /* Parent falls through to here */\n" "\\&\n" " sleep(1); /* Give child time to change its hostname */\n" "\\&\n" " /* Display hostname in parent\\[aq]s UTS namespace. This will be\n" " different from hostname in child\\[aq]s UTS namespace. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename in parent: %s\\en\", uts.nodename);\n" "\\&\n" " if (waitpid(pid, NULL, 0) == -1) /* Wait for child */\n" " err(EXIT_FAILURE, \"waitpid\");\n" " printf(\"child has terminated\\en\");\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "#define _GNU_SOURCE\n" "#include Eerr.hE\n" "#include Esched.hE\n" "#include Esignal.hE\n" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/mman.hE\n" "#include Esys/utsname.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" "\\&\n" "static int /* Commencer la fonction pour l'enfant cloné */\n" "childFunc(void *arg)\n" "{\n" " struct utsname uts;\n" "\\&\n" " /* Modifier le nom d'hôte dans l'espace de noms UTS de l'enfant. */\n" "\\&\n" " if (sethostname(arg, strlen(arg)) == -1)\n" " err(EXIT_FAILURE, \"sethostname\");\n" "\\&\n" " /* Récupérer et afficher le nom d'hôte. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename dans l'enfant : %s\\en\", uts.nodename);\n" "\\&\n" " /* Rester en sommeil (fonction sleep) pour conserver l'espace\n" " de noms ouvert pendant un moment. Cela permet de réaliser\n" " quelques expérimentations — par exemple, un autre processus\n" " pourrait rejoindre l'espace de noms. */\n" "\\&\n" " sleep(200);\n" "\\&\n" " return 0; /* Le processus enfant se termine à ce moment */\n" "}\n" "\\&\n" "#define STACK_SIZE (1024 * 1024) /* Taille de la pile pour \n" " l'enfant cloné */\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *stack; /* Début du tampon de la pile */\n" " char *stackTop; /* Fin du tampon de la pile */\n" " pid_t pid;\n" " struct utsname uts;\n" "\\&\n" " if (argc E 2) {\n" " fprintf(stderr, \"Utilisation : %s Enom_d_hôte-enfantE\\en\", argv[0]);\n" " exit(EXIT_SUCCESS);\n" " }\n" "\\&\n" " /* Allouer la mémoire à utiliser pour la pile du processus enfant. */\n" "\\&\n" " stack = mmap(NULL, STACK_SIZE, PROT_READ | PROT_WRITE,\n" " MAP_PRIVATE | MAP_ANONYMOUS | MAP_STACK, -1, 0);\n" " if (stack == MAP_FAILED)\n" " err(EXIT_FAILURE, \"mmap\");\n" "\\&\n" " stackTop = stack + STACK_SIZE; /* On suppose que la pile grandit vers\n" " le bas */\n" "\\&\n" " /* Créer un processus enfant disposant de son propre\n" " espace de noms UTS ; le processus enfant débute\n" " son exécution dans childFunc(). */\n" "\\&\n" " pid = clone(childFunc, stackTop, CLONE_NEWUTS | SIGCHLD, argv[1]);\n" " if (pid == -1)\n" " err(EXIT_FAILURE, \"clone\");\n" " printf(\"clone() a renvoyé %jd\\en\", (intmax_t) pid);\n" "\\&\n" " /* Le parent se retrouve ici */\n" "\\&\n" " sleep(1); /* Laisser le temps au processus enfant de\n" " changer son nom d'hôte */\n" "\\&\n" " /* Afficher le nom d'hôte pour l'espace de noms UTS du processus parent.\n" " Celui-ci sera différent du nom d'hôte pour l'espace de noms UTS du\n" " processus enfant. */\n" "\\&\n" " if (uname(&uts) == -1)\n" " err(EXIT_FAILURE, \"uname\");\n" " printf(\"uts.nodename dans le parent : %s\\en\", uts.nodename);\n" "\\&\n" " if (waitpid(pid, NULL, 0) == -1) /* Attendre le processus enfant */\n" " err(EXIT_FAILURE, \"waitpid\");\n" " printf(\"Fin du processus enfant\\en\");\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: TH #: fedora-rawhide #, no-wrap msgid "2024-02-18" msgstr "18 février 2024" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Pages du manuel de Linux 6.7" #. 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" #. commit 7f192e3cd316ba58c88dfa26796cf77789dd9872 #. type: Plain text #: opensuse-leap-15-6 msgid "" "B or B was specified in the I mask, but a " "signal was specified in I" msgstr "" "B ou B ont été spécifiés dans le masque " "I, mais un signal a été spécifié dans I." #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr "Pages du manuel de Linux (non publiées)"