# 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, 2012-2014. # Denis Barbier , 2006,2010. # David Prévot , 2010-2014. # Jean-Philippe MENGUAL , 2020-2024. msgid "" msgstr "" "Project-Id-Version: manpages-l10n 4.21.0\n" "POT-Creation-Date: 2024-03-01 17:02+0100\n" "PO-Revision-Date: 2024-03-13 12:31+0100\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 "mprotect" msgstr "mprotect" #. type: TH #: archlinux fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 octobre 2023" #. type: TH #: archlinux fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Pages du manuel de Linux 6.06" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "NOM" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "mprotect, pkey_mprotect - set protection on a region of memory" msgstr "" "mprotect, pkey_mprotect - Définir la protection d'une partie de la mémoire" #. 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 "B<#include Esys/mman.hE>\n" msgstr "B<#include Esys/mman.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<[.>IB<], size_t >IB<, int >IB<);>\n" msgstr "BIB<[.>IB<], size_t >IB<, int >IB<);>\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> /* See feature_test_macros(7) */\n" "B<#include Esys/mman.hE>\n" msgstr "" "B<#define _GNU_SOURCE> /* Consultez feature_test_macros(7) */\n" "B<#include Esys/mman.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<[.>IB<], size_t >IB<, int >IB<, int >IB<);>\n" msgstr "BIB<[.>IB<], size_t >IB<, int >IB<, int >IB<);>\n" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "DESCRIPTION" msgstr "DESCRIPTION" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() changes the access protections for the calling process's " "memory pages containing any part of the address range in the interval " "[I,\\ I+I-1]. I must be aligned to a page boundary." msgstr "" "B() change les protections d'accès pour la (les) page(s) de " "mémoire du processus appelant contenant tout ou une partie de l'intervalle " "[I,\\ I+I-1]. I doit être aligné sur une limite de " "page." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the calling process tries to access memory in a manner that violates the " "protections, then the kernel generates a B signal for the process." msgstr "" "Si le processus appelant essaie d'accéder à la mémoire en violant la " "protection, le noyau génère un signal B pour ce processus." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "I is a combination of the following access flags: B or a " "bitwise OR of the other values in the following list:" msgstr "" "I est une combinaison des attributs d'accès suivants : B ou " "le résultat d’une opération OU bit à bit parmi les autres valeurs de la " "liste suivante :" #. 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 "The memory cannot be accessed at all." msgstr "On ne peut pas accéder du tout à la zone de mémoire." #. 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 "The memory can be read." msgstr "On peut lire la zone de mémoire." #. 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 "The memory can be modified." msgstr "On peut modifier la zone de mémoire." #. 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 "The memory can be executed." msgstr "La zone de mémoire peut contenir du code exécutable." #. 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.7)" msgstr "B (depuis Linux 2.5.7)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The memory can be used for atomic operations. This flag was introduced as " "part of the B(2) implementation (in order to guarantee the ability " "to perform atomic operations required by commands such as B), " "but is not currently used in on any architecture." msgstr "" "La mémoire peut être utilisée pour des opérations atomiques. Cet attribut a " "été introduit dans l'implémentation de B(2) (afin de garantir la " "possibilité d'effectuer des opérations atomiques exigées par des commandes " "comme B), mais il n'est actuellement utilisé sur aucune " "architecture." #. 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.26)" msgstr "B (depuis Linux 2.6.26)" #. commit aba46c5027cb59d98052231b36efcbbde9c77a1d #. commit ef3d3246a0d06be622867d21af25f997aeeb105f #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The memory should have strong access ordering. This feature is specific to " "the PowerPC architecture (version 2.06 of the architecture specification " "adds the SAO CPU feature, and it is available on POWER 7 or PowerPC A2, for " "example)." msgstr "" "La mémoire devrait avoir une forte organisation de son accès. Cette " "fonctionnalité est spécifique à l'architecture PowerPC (la version 2.06 de " "la spécification de l'architecture ajoute la fonction SAO du processeur, " "disponible par exemple sur POWER 7 ou PowerPC A2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Additionally (since Linux 2.6.0), I can have one of the following " "flags set:" msgstr "" "En outre (depuis Linux 2.6.0), il est possible de positionner les attributs " "suivants sur I :" #. mm/mmap.c: #. vm_flags |= calc_vm_prot_bits(prot, pkey) | calc_vm_flag_bits(flags) | #. mm->def_flags | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC; #. And calc_vm_flag_bits converts only GROWSDOWN/DENYWRITE/LOCKED. #. 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" #. The VMA is one that was marked with VM_GROWSUP by the kernel #. when the stack was created. Note that (unlike VM_GROWSDOWN), #. there is no mmap() flag (analogous to MAP_GROWSDOWN) for #. creating a VMA that is marked VM_GROWSUP. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Apply the protection mode up to the end of a mapping that grows upwards. " "(Such mappings are created for the stack area on architectures\\[em]for " "example, HP-PARISC\\[em]that have an upwardly growing stack.)" msgstr "" "Appliquer le mode de protection jusqu'à la fin d'une projection qui grandit " "vers le haut (de telles projections sont créées pour la zone de la pile sur " "une architecture — par exemple HP-PARISC — dont la pile a tendance à " "s'accroître vers le haut)." #. 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 "" "Apply the protection mode down to the beginning of a mapping that grows " "downward (which should be a stack segment or a segment mapped with the " "B flag set)." msgstr "" "Appliquer le mode de protection vers le bas jusqu'au début d'une projection " "qui grandit vers le bas (il pourrait s'agir d'un segment de pile ou d'un " "segment projeté avec un drapeau B positionné)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Like B(), B() changes the protection on the pages " "specified by I and I. The I argument specifies the " "protection key (see B(7)) to assign to the memory. The protection " "key must be allocated with B(2) before it is passed to " "B(). For an example of the use of this system call, see " "B(7)." msgstr "" "Comme B(), B() modifie la protection des pages " "indiquées par I et I. Le paramètre I indique la clé de " "protection (voir B(7))) à assigner à la mémoire. La clé de protection " "doit être allouée avec B(2) avant d'être passée à " "B(). Pour un exemple d'utilisation de cet appel système, voir " "B(7)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "RETURN VALUE" msgstr "VALEUR RENVOYÉE" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On success, B() and B() return zero. On error, " "these system calls return -1, and I is set to indicate the error." msgstr "" "B() et B() renvoient B<0> s'ils réussissent. En cas " "d'erreur, ces appels système renvoient B<-1> et I est défini 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" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The memory cannot be given the specified access. This can happen, for " "example, if you B(2) a file to which you have read-only access, then " "ask B() to mark it B." msgstr "" "L'accès spécifié n'est pas possible sur ce type de mémoire. Cela se produit " "par exemple si vous utilisez B(2) pour représenter un fichier en " "lecture seule en mémoire, et puis demandez de marquer cette zone 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 "" "I is not a valid pointer, or not a multiple of the system page size." msgstr "" "I n'est pas un pointeur valable, ou ce n'est pas un multiple de la " "taille de page du système." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(B()) I has not been allocated with B(2)" msgstr "(B()) I n'a pas été alloué avec B(2)" #. 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 I." msgstr "" "B et B étaient indiqués tous les deux dans " "I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Invalid flags specified in I." msgstr "Drapeaux non valables indiqués dans I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(PowerPC architecture) B was specified in I, but SAO " "hardware feature is not available." msgstr "" "(Architecture PowerPC) B était indiqué dans I, mais la " "fonctionnalité matérielle SAO n'est pas disponible." #. 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 "Internal kernel structures could not be allocated." msgstr "Impossible d'allouer des structures internes au noyau." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Addresses in the range [I, I+I-1] are invalid for the " "address space of the process, or specify one or more pages that are not " "mapped. (Before Linux 2.4.19, the error B was incorrectly produced " "for these cases.)" msgstr "" "Les adresses dans l'intervalle [I, I+I-1] ne sont pas " "valables dans l'espace d'adressage du processus, ou l'intervalle s'étend sur " "des pages non projetées (avant Linux 2.4.19, l'erreur B était " "produite à tort dans ce cas)." #. I.e., the number of VMAs would exceed the 64 kB maximum #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Changing the protection of a memory region would result in the total number " "of mappings with distinct attributes (e.g., read versus read/write " "protection) exceeding the allowed maximum. (For example, making the " "protection of a range B in the middle of a region currently " "protected as B would result in three mappings: two " "read/write mappings at each end and a read-only mapping in the middle.)" msgstr "" "La modification de la protection d'une zone de la mémoire ferait dépasser le " "nombre maximal autorisé de projections avec des attributs différents (comme " "la protection en lecture vs lecture/écriture) (par exemple, positionner une " "protection d'une plage B au milieu d'une zone protégée par " "B donnerait trois projections : deux en lecture/" "écriture aux extrémités et une en lecture seule au milieu)." #. 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" #. SVr4 defines an additional error #. code EAGAIN. The SVr4 error conditions don't map neatly onto Linux's. #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "" "POSIX says that the behavior of B() is unspecified if it is " "applied to a region of memory that was not obtained via B(2)." msgstr "" "POSIX indique que le comportement de B() n'est pas spécifié s'il " "s'applique à une zone de mémoire non obtenue à l'aide de B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On Linux, it is always permissible to call B() on any address in " "a process's address space (except for the kernel vsyscall area). In " "particular, it can be used to change existing code mappings to be writable." msgstr "" "Sous Linux, il est toujours autorisé d'appeler B() sur une adresse " "de l'espace d'adressage du processus (excepté pour la zone vsyscall du " "noyau). En particulier, il peut être utilisé pour rendre une projection de " "code existante accessible en écriture." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Whether B has any effect different from B depends on " "processor architecture, kernel version, and process state. If " "B is set in the process's personality flags (see " "B(2)), specifying B will implicitly add B." msgstr "" "La différence entre B et B dépend de l'architecture, " "de la version du noyau et de l'état du processus. Sur certaines, si " "B est positionné dans les drapeaux de la personnalité " "d'un processus (voir B(2)), le fait d'indiquer B " "ajoutera implicitement B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On some hardware architectures (e.g., i386), B implies " "B." msgstr "" "Sur certaines architectures matérielles (comme i386), B implique " "B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "POSIX.1 says that an implementation may permit access other than that " "specified in I, but at a minimum can allow write access only if " "B has been set, and must not allow any access if B " "has been set." msgstr "" "POSIX.1 indique qu'une implémentation peut autoriser un accès autre que " "celui donné dans I, mais doit au minimum autoriser l'accès en écriture " "si B était passé, et ne doit autoriser aucun accès si " "B était passé." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Applications should be careful when mixing use of B() and " "B(). On x86, when B() is used with I set to " "B a pkey may be allocated and set on the memory implicitly by the " "kernel, but only when the pkey was 0 previously." msgstr "" "Les applications devraient faire attention quand elles mélangent " "l'utilisation de B() et de B(). Sur x86, quand " "B() est utilisé avec I positionné sur B, une pkey " "peut être allouée et positionnée implicitement sur la mémoire par le noyau, " "mais uniquement quand la pkey était de B<0> précédemment." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On systems that do not support protection keys in hardware, " "B() may still be used, but I must be set to -1. When " "called this way, the operation of B() is equivalent to " "B()." msgstr "" "Sur les systèmes qui ne gèrent pas les clés de protection dans le matériel, " "B() peut toujours être utilisé, mais I doit être " "positionné sur B<-1>. Si elle est appelée ainsi, l'opération " "B() est équivalente à B()." #. 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: TP #: archlinux 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-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2008." msgstr "POSIX.1-2008." #. type: TP #: archlinux 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-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: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2001, SVr4." msgstr "POSIX.1-2001, SVr4." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "Linux 4.9, glibc 2.27." msgstr "Linux 4.9, glibc 2.27." #. 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: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "EXEMPLES" #. sigaction.2 refers to this example #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The program below demonstrates the use of B(). The program " "allocates four pages of memory, makes the third of these pages read-only, " "and then executes a loop that walks upward through the allocated region " "modifying bytes." msgstr "" "Le programme ci-dessous montre l'utilisation de B(). Il alloue " "quatre pages de mémoire, rend la troisième accessible en lecture seule, puis " "exécute une boucle qui se déplace en avançant dans la région allouée et en " "modifiant son contenu." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "An example of what we might see when running the program is the following:" msgstr "Voici un exemple d'exécution de ce programme\\ :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "$B< ./a.out>\n" "Start of region: 0x804c000\n" "Got SIGSEGV at address: 0x804e000\n" msgstr "" "$B< ./a.out>\n" "Début de la région\\ : 0x804c000\n" "Reçu SIGSEGV à l'adresse\\ : 0x804e000\n" #. 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 fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Emalloc.hE\n" "#include Esignal.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Eunistd.hE\n" "\\&\n" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" "\\&\n" "static char *buffer;\n" "\\&\n" "static void\n" "handler(int sig, siginfo_t *si, void *unused)\n" "{\n" " /* Note: calling printf() from a signal handler is not safe\n" " (and should not be done in production programs), since\n" " printf() is not async-signal-safe; see signal-safety(7).\n" " Nevertheless, we use printf() here as a simple way of\n" " showing that the handler was called. */\n" "\\&\n" " printf(\"Got SIGSEGV at address: %p\\en\", si-Esi_addr);\n" " exit(EXIT_FAILURE);\n" "}\n" "\\&\n" "int\n" "main(void)\n" "{\n" " int pagesize;\n" " struct sigaction sa;\n" "\\&\n" " sa.sa_flags = SA_SIGINFO;\n" " sigemptyset(&sa.sa_mask);\n" " sa.sa_sigaction = handler;\n" " if (sigaction(SIGSEGV, &sa, NULL) == -1)\n" " handle_error(\"sigaction\");\n" "\\&\n" " pagesize = sysconf(_SC_PAGE_SIZE);\n" " if (pagesize == -1)\n" " handle_error(\"sysconf\");\n" "\\&\n" " /* Allocate a buffer aligned on a page boundary;\n" " initial protection is PROT_READ | PROT_WRITE. */\n" "\\&\n" " buffer = memalign(pagesize, 4 * pagesize);\n" " if (buffer == NULL)\n" " handle_error(\"memalign\");\n" "\\&\n" " printf(\"Start of region: %p\\en\", buffer);\n" "\\&\n" " if (mprotect(buffer + pagesize * 2, pagesize,\n" " PROT_READ) == -1)\n" " handle_error(\"mprotect\");\n" "\\&\n" " for (char *p = buffer ; ; )\n" " *(p++) = \\[aq]a\\[aq];\n" "\\&\n" " printf(\"Loop completed\\en\"); /* Should never happen */\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "#include Emalloc.hE\n" "#include Esignal.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Eunistd.hE\n" "\\&\n" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" "\\&\n" "static char *buffer;\n" "\\&\n" "static void\n" "handler(int sig, siginfo_t *si, void *unused)\n" "{\n" " /* Remarque : appeler printf() à partir d'un gestionnaire de signal \n" " n'est pas sûr (vous ne devriez pas le faire dans des programmes en \n" " production) car printf() n'est pas async-signal-safe ; voir \n" " signal-safety(7). Cependant, nous utilisons printf() ici comme \n" " façon simple de montrer que le gestionnaire a été appelé. */\n" "\\&\n" " printf(\"Reçu SIGSEGV à l'adresse\\ : %p\\en\", si-Esi_addr);\n" " exit(EXIT_FAILURE);\n" "}\n" "\\&\n" "int\n" "main(void)\n" "{\n" " int pagesize;\n" " struct sigaction sa;\n" "\\&\n" " sa.sa_flags = SA_SIGINFO;\n" " sigemptyset(&sa.sa_mask);\n" " sa.sa_sigaction = handler;\n" " if (sigaction(SIGSEGV, &sa, NULL) == -1)\n" " handle_error(\"sigaction\");\n" "\\&\n" " pagesize = sysconf(_SC_PAGE_SIZE);\n" " if (pagesize == -1)\n" " handle_error(\"sysconf\");\n" "\\&\n" " /* Allouer un tampon aligné sur une limite de page ;\n" " la protection initiale est PROT_READ | PROT_WRITE. */\n" "\\&\n" " buffer = memalign(pagesize, 4 * pagesize);\n" " if (buffer == NULL)\n" " handle_error(\"memalign\");\n" "\\&\n" " printf(\"Début de la région\\ : %p\\en\", buffer);\n" "\\&\n" " if (mprotect(buffer + pagesize * 2, pagesize,\n" " PROT_READ) == -1)\n" " handle_error(\"mprotect\");\n" "\\&\n" " for (char *p = buffer ; ; )\n" " *(p++) = \\[aq]a\\[aq];\n" "\\&\n" " printf(\"Boucle terminée\\en\"); /* Ne devrait jamais arriver */\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(3), B(7)" msgstr "B(2), B(3), 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 "" "I is a combination of the following access flags: B or a " "bitwise-or of the other values in the following list:" msgstr "" "I est une combinaison des attributs d'accès suivants : B ou " "le résultat d’une opération OU bit à bit parmi les autres valeurs de la " "liste suivante :" #. type: Plain text #: debian-bookworm msgid "" "B() first appeared in Linux 4.9; library support was added " "in glibc 2.27." msgstr "" "B() est apparu dans Linux 4.9\\ ; la bibliothèque glibc le " "gère depuis la version 2.27." #. SVr4 defines an additional error #. code EAGAIN. The SVr4 error conditions don't map neatly onto Linux's. #. type: Plain text #: debian-bookworm msgid "" "B(): POSIX.1-2001, POSIX.1-2008, SVr4. POSIX says that the " "behavior of B() is unspecified if it is applied to a region of " "memory that was not obtained via B(2)." msgstr "" "B() : POSIX.1-2001, POSIX.1-2008, SVr4. POSIX indique que le " "comportement de B() n'est pas spécifié s'il s'applique à une zone " "de mémoire non obtenue à l'aide de B(2)." #. type: Plain text #: debian-bookworm msgid "B() is a nonportable Linux extension." msgstr "B() est une extension Linux non portable." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Emalloc.hE\n" "#include Esignal.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Eunistd.hE\n" msgstr "" "#include Emalloc.hE\n" "#include Esignal.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Eunistd.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" msgstr "" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "static char *buffer;\n" msgstr "static char *buffer;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static void\n" "handler(int sig, siginfo_t *si, void *unused)\n" "{\n" " /* Note: calling printf() from a signal handler is not safe\n" " (and should not be done in production programs), since\n" " printf() is not async-signal-safe; see signal-safety(7).\n" " Nevertheless, we use printf() here as a simple way of\n" " showing that the handler was called. */\n" msgstr "" "static void\n" "handler(int sig, siginfo_t *si, void *unused)\n" "{\n" " /* Remarque : appeler printf() à partir d'un gestionnaire de signal \n" " n'est pas sûr (vous ne devriez pas le faire dans des programmes en \n" " production) car printf() n'est pas async-signal-safe ; voir \n" " signal-safety(7). Cependant, nous utilisons printf() ici comme \n" " façon simple de montrer que le gestionnaire a été appelé. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " printf(\"Got SIGSEGV at address: %p\\en\", si-Esi_addr);\n" " exit(EXIT_FAILURE);\n" "}\n" msgstr "" "static void\n" " printf(\"Reçu SIGSEGV à l'adresse\\ : %p\\en\", si-Esi_addr);\n" " exit(EXIT_FAILURE);\n" "}\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(void)\n" "{\n" " int pagesize;\n" " struct sigaction sa;\n" msgstr "" "int\n" "main(void)\n" "{\n" " int pagesize;\n" " struct sigaction sa;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " sa.sa_flags = SA_SIGINFO;\n" " sigemptyset(&sa.sa_mask);\n" " sa.sa_sigaction = handler;\n" " if (sigaction(SIGSEGV, &sa, NULL) == -1)\n" " handle_error(\"sigaction\");\n" msgstr "" " sa.sa_flags = SA_SIGINFO;\n" " sigemptyset(&sa.sa_mask);\n" " sa.sa_sigaction = handler;\n" " if (sigaction(SIGSEGV, &sa, NULL) == -1)\n" " handle_error(\"sigaction\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " pagesize = sysconf(_SC_PAGE_SIZE);\n" " if (pagesize == -1)\n" " handle_error(\"sysconf\");\n" msgstr "" " pagesize = sysconf(_SC_PAGE_SIZE);\n" " if (pagesize == -1)\n" " handle_error(\"sysconf\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " /* Allocate a buffer aligned on a page boundary;\n" " initial protection is PROT_READ | PROT_WRITE. */\n" msgstr "" " /* Allouer un tampon aligné sur une limite de page ;\n" " la protection initiale est PROT_READ | PROT_WRITE. */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " buffer = memalign(pagesize, 4 * pagesize);\n" " if (buffer == NULL)\n" " handle_error(\"memalign\");\n" msgstr "" " buffer = memalign(pagesize, 4 * pagesize);\n" " if (buffer == NULL)\n" " handle_error(\"memalign\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " printf(\"Start of region: %p\\en\", buffer);\n" msgstr " printf(\"Début de la région\\ : %p\\en\", buffer);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (mprotect(buffer + pagesize * 2, pagesize,\n" " PROT_READ) == -1)\n" " handle_error(\"mprotect\");\n" msgstr "" " if (mprotect(buffer + pagesize * 2, pagesize,\n" " PROT_READ) == -1)\n" " handle_error(\"mprotect\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " for (char *p = buffer ; ; )\n" " *(p++) = \\[aq]a\\[aq];\n" msgstr "" " for (char *p = buffer ; ; )\n" " *(p++) = \\[aq]a\\[aq];\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " printf(\"Loop completed\\en\"); /* Should never happen */\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " printf(\"Boucle terminée\\en\"); /* Ne devrait jamais arriver */\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: TH #: debian-unstable opensuse-tumbleweed #, no-wrap msgid "2023-05-03" msgstr "3 mai 2023" #. type: TH #: debian-unstable opensuse-tumbleweed #, no-wrap msgid "Linux man-pages 6.05.01" msgstr "Pages du manuel de Linux 6.05.01" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30 mars 2023" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Pages du manuel de Linux 6.04"