perkamon - en to fr translation catalogue (29 entries)

note: type: TH
en: 2023-03-30
fr: 30 mars 2023

note: type: TH
en: Linux man-pages 6.05.01
fr: Pages du manuel de Linux 6.05.01

note: type: SH
en: NAME
fr: NOM

note: type: Plain text
en: subpage_prot - define a subpage protection for an address range
fr: subpage_prot - Définir une protection des sous-pages pour un intervalle d'adresses

note: type: SH
en: LIBRARY
fr: BIBLIOTHÈQUE

note: type: Plain text
en: Standard C library (I<libc>, I<-lc>)
fr: Bibliothèque C standard (I<libc>, I<-lc>)

note: type: Plain text
en: B<#include E<lt>sys/syscall.hE<gt>>      /* Definition of B<SYS_*> constants */
    B<#include E<lt>unistd.hE<gt>>
fr: B<#include E<lt>sys/syscall.hE<gt>>      /* Définition des constantes B<SYS_*> */
    B<#include E<lt>unistd.hE<gt>>

note: type: Plain text
en: I<Note>: glibc provides no wrapper for B<subpage_prot>(), necessitating the use of B<syscall>(2).
fr: I<Remarque>: la glibc ne fournit pas d'enveloppe pour B<subpage_prot>(), imposant l'utilisation de B<syscall>(2).

note: type: Plain text
en: The PowerPC-specific B<subpage_prot>()  system call provides the facility to control the access permissions on individual 4\ kB subpages on systems configured with a page size of 64\ kB.
fr: L'appel système B<subpage_prot>() spécifique aux PowerPC fournit la possibilité de contrôler les permissions d'accès sur des sous-pages individuelles de 4 ko sur des systèmes configurés avec une taille de page de 64 ko.

note: type: Plain text
en: The protection map is applied to the memory pages in the region starting at I<addr> and continuing for I<len> bytes.  Both of these arguments must be aligned to a 64-kB boundary.
fr: La table de protection est appliquée aux pages de mémoire dans la région démarrant à I<addr> et sur I<len> octets. Ces deux paramètres doivent être alignés sur des frontières de 64 ko.

note: type: Plain text
en: The protection map is specified in the buffer pointed to by I<map>.  The map has 2 bits per 4\ kB subpage; thus each 32-bit word specifies the protections of 16 4\ kB subpages inside a 64\ kB page (so, the number of 32-bit words pointed to by I<map> should equate to the number of 64-kB pages specified by I<len>).  Each 2-bit field in the protection map is either 0 to allow any access, 1 to prevent writes, or 2 or 3 to prevent all accesses.
fr: La table de protection est spécifiée dans le tampon dont l'adresse est fournie dans I<map>. La table contient 2 bits par sous-page de 4 ko ; ainsi chaque mot de 32 bits spécifie les protections de 16 sous-pages de 4 ko dans une page de 64 ko (on voit donc que le nombre de mots 32 bits pointés par I<map> doit valoir le nombre de pages de 64 ko indiqué par I<len>). Chaque champ de 2 bits dans la table de protection vaut soit B<0> pour autoriser tout accès, soit B<1> pour interdire l'écriture, soit B<2> ou B<3> pour interdire tout accès.

note: type: SH
en: RETURN VALUE
fr: VALEUR RENVOYÉE

note: type: Plain text
en: On success, B<subpage_prot>()  returns 0.  Otherwise, one of the error codes specified below is returned.
fr: S'il réussit B<subpage_prot>() renvoie 0. Sinon, il renvoie un des codes d'erreur définis ci-dessous.

note: type: SH
en: ERRORS
fr: ERREURS

note: type: Plain text
en: The buffer referred to by I<map> is not accessible.
fr: Le tampon indiqué par I<map> n'est pas accessible.

note: type: Plain text
en: The I<addr> or I<len> arguments are incorrect.  Both of these arguments must be aligned to a multiple of the system page size, and they must not refer to a region outside of the address space of the process or to a region that consists of huge pages.
fr: Les paramètres I<addr> ou I<len> sont incorrects. Ces deux paramètres doivent être alignés sur un multiple de taille de page du système, et ne doivent pas désigner une région en dehors de l'espace d'adressage du processus ou une région qui contient des pages immenses.

note: type: Plain text
en: Out of memory.
fr: Plus assez de mémoire.

note: type: SH
en: HISTORY
fr: HISTORIQUE

note: type: Plain text
en: Normal page protections (at the 64-kB page level) also apply; the subpage protection mechanism is an additional constraint, so putting 0 in a 2-bit field won't allow writes to a page that is otherwise write-protected.
fr: Les protections de page habituelles (au niveau de chaque page de 64 ko) s'appliquent aussi ; le mécanisme de protection des sous-pages est une contrainte supplémentaire, ainsi un 0 dans un champ sur 2 bits ne permettra pas d'écrire sur une page qui est par ailleurs protégée en écriture.

note: type: SS
en: Rationale
fr: Justification

note: In the initial implementation, it was the case that: In fact the whole process is switched to use 4 kB hardware pages when the subpage_prot system call is used, but this could be improved in future to switch only the affected segments. But Paul Mackerass says (Oct 2010): I'm pretty sure we now only 
en: This system call is provided to assist writing emulators that operate using 64-kB pages on PowerPC systems.  When emulating systems such as x86, which uses a smaller page size, the emulator can no longer use the memory-management unit (MMU)  and normal system calls for controlling page protections.  (The emulator could emulate the MMU by checking and possibly remapping the address for each memory access in software, but that is slow.)  The idea is that the emulator supplies an array of protection masks to apply to a specified range of virtual addresses.  These masks are applied at the level where hardware page-table entries (PTEs)  are inserted into the hardware page table based on the Linux PTEs, so the Linux PTEs are not affected.  Implicit in this is that the regions of the address space that are protected are switched to use 4-kB hardware pages rather than 64-kB hardware pages (on machines with hardware 64-kB page support).
fr: Cet appel système est fourni pour aider l'écriture d'émulateurs qui opèrent avec des pages de 64 ko sur des systèmes PowerPC. Quand on émule des systèmes x86, qui utilisent une taille de page inférieure, l'émulateur ne peut plus utiliser l'unité de gestion de la mémoire (I<memory-management unit>, ou MMU) et les appels système habituels pour contrôler les protections de pages (l'émulateur pourrait émuler le MMU en vérifiant, et éventuellement traduisant, chaque adresse mémoire, mais cela est lent). L'idée est que l'émulateur fournisse un tableau de masques de protections à appliquer sur un intervalle donné d'adresses virtuelles. Ces masques sont appliqués au niveau où les entrées de tables de pages (I<page-table entries>, ou PTE) matérielles sont insérées dans la table de pages matérielles basées sur les PTE Linux, si bien que les PTE Linux ne sont pas affectées. Il en résulte que les régions de l'espace d'adressage qui sont protégées basculent vers des pages matérielles de 4 ko au lieu de 64 ko (pour les machines qui prennent en charge des pages matérielles de 64 ko).

note: type: SH
en: SEE ALSO
fr: VOIR AUSSI

note: type: Plain text
en: I<Documentation/admin-guide/mm/hugetlbpage.rst> in the Linux kernel source tree
fr: I<Documentation/admin-guide/mm/hugetlbpage.rst> dans les sources du noyau Linux.

note: type: TH
en: 2022-12-04
fr: 4 décembre 2022

note: type: TH
en: Linux man-pages 6.03
fr: Pages du manuel de Linux 6.03

note: type: Plain text
en: This system call is provided on the PowerPC architecture since Linux 2.6.25.  The system call is provided only if the kernel is configured with B<CONFIG_PPC_64K_PAGES>.  No library support is provided.
fr: Cet appel système est disponible sur les architectures PowerPC depuis Linux 2.6.25. L'appel système n'est disponible que si le noyau a été configuré avec B<CONFIG_PPC_64K_PAGES>. Aucune prise en charge dans l'espace utilisateur n'est disponible.

note: type: Plain text
en: This system call is Linux-specific.
fr: Cet appel système est spécifique à Linux.

note: type: TH
en: Linux man-pages 6.05
fr: Pages du manuel de Linux 6.05

note: type: TH
en: Linux man-pages 6.04
fr: Pages du manuel de Linux 6.04
