Provided by: manpages-fr-dev_3.32d0.2p4-1_all bug

NOM

       remap_file_pages - Creer une projection non lineaire d'un fichier

SYNOPSIS

       #define _GNU_SOURCE         /* Consultez feature_test_macros(7) */
       #include <sys/mman.h>

       int remap_file_pages(void *addr, size_t size, int prot,
                            ssize_t pgoff, int flags);

DESCRIPTION

       L'appel   systeme   remap_file_pages()   est  utilise  pour  creer  une
       projection non lineaire, c'est-a-dire une projection dans laquelle  les
       pages   du  fichier  sont  projetees  en  memoire  dans  un  ordre  non
       sequentiel. L'avantage d'utiliser remap_file_pages() au lieu  de  faire
       des  appels repetes a mmap(2) est que la premiere approche n'impose pas
       au noyau de creer des structures de donnees VMA (Virtual Memory  Area :
       zone memoire virtuelle) supplementaires.

       Pour  creer  une  projection  non  lineaire,  nous allons effectuer les
       etapes suivantes :

       1. Utiliser mmap(2) pour creer une  projection  (qui  est  initialement
          lineaire).   Cette   projection  doit  etre  creee  avec  l'attribut
          MAP_SHARED.

       2. Utiliser  un  ou  plusieurs   appels   a   remap_file_pages()   pour
          reorganiser  la  correspondance  entre les pages de la projection et
          les pages du fichier. Il est possible d'acceder a la meme page  d'un
          fichier dans plusieurs endroits de la region projetee.

       Les  parametres pgoff et size specifient la region du fichier a reloger
       dans la projection : pgoff est  un  decalage  de  fichier  (Ndt :  file
       offset)  dans  l'unite  de  taille  de  page  du  systeme ; size est la
       longueur de la region en octets.

       Le parametre addr sert a deux choses. Tout  d'abord,  il  identifie  la
       projection  des  pages  que l'on souhaite reorganiser. Ainsi, addr doit
       etre une adresse tombant dans une region precedemment projetee  par  un
       appel  a mmap(2). Ensuite, addr specifie l'adresse a laquelle les pages
       du fichier identifiees par pgoff et size seront placees.

       Les valeurs specifiees dans addr et size doivent etre des multiples  de
       la  taille  de page systeme. Si elles ne le sont pas, le noyau arrondit
       par d'efaut les deux valeurs au multiple  de  taille  de  page  le  plus
       proche.

       Le parametre prot doit etre specifie a 0.

       Le  parametre flags a la meme signification que pour mmap(2), mais tous
       les attributs autres que MAP_NONBLOCK sont ignores.

VALEUR RENVOY'EE

       S'il reussit, remap_file_pages() renvoie 0. S'il echoue, -1 est renvoye
       et errno est positionnee en consequence.

ERREURS

       EINVAL addr  ne  fait  pas reference a une projection valide creee avec
              l'attribut MAP_SHARED.

       EINVAL addr, size, prot ou pgoff n'est pas valable.

VERSIONS

       L'appel systeme remap_file_pages() est apparu dans  Linux  2.5.46 ;  la
       glibc le gere depuis la version 2.3.3.

CONFORMIT'E

       L'appel systeme remap_file_pages() est specifique a Linux.

VOIR AUSSI

       getpagesize(2), mmap(2), mmap2(2), mprotect(2), mremap(2), msync(2)

COLOPHON

       Cette  page  fait  partie  de  la  publication 3.32 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler  des
       anomalies       peuvent       etre       trouvees      a      l'adresse
       <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis 2010, cette traduction est maintenue a l'aide  de  l'outil  po4a
       <URL:http://po4a.alioth.debian.org/>   par   l'equipe   de   traduction
       francophone       au       sein        du        projet        perkamon
       <URL:http://perkamon.alioth.debian.org/>.

       Alain   Portal   <URL:http://manpagesfr.free.fr/> (2004-2006).   Julien
       Cristau et l'equipe francophone de traduction de Debian (2006-2009).

       Veuillez  signaler  toute  erreur   de   traduction   en   ecrivant   a
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous pouvez toujours avoir acces a la version anglaise de  ce  document
       en utilisant la commande << man -L C <section> <page_de_man> >>.