Provided by: manpages-fr-dev_4.13-4_all bug

NOM

       posix_madvise – Donner des indices sur les tendances de l'utilisation mémoire

SYNOPSIS

       #include <sys/mman.h>

       int posix_madvise(void *addr, size_t len, int advice);

   Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

       posix_madvise() :
           _POSIX_C_SOURCE >= 200112L

DESCRIPTION

       La  fonction  posix_madvise()  permet  à  un  programme  d'indiquer au système les tendances attendues de
       l'utilisation mémoire de la plage d'adresses commençant à addr et s'étendant sur len octets.  Le  système
       peut  utiliser  ces  indications  afin  d'améliorer  les performances d'accès mémoire ou est libre de les
       ignorer complètement, mais l'appel à posix_madvise() ne doit  pas  influencer  la  sémantique  des  accès
       mémoire dans la plage spécifiée.

       L'argument advice contient une des valeurs suivantes :

       POSIX_MADV_NORMAL
              L'application  n'a pas d'indice particulier concernant les tendances d'utilisation mémoire pour la
              plage d'adresses spécifiée. C'est le comportement par défaut.

       POSIX_MADV_SEQUENTIAL
              L'application prévoit d'accéder séquentiellement à la plage  d'adresses  spécifiée,  des  adresses
              basses   aux   adresses   hautes.   Par  conséquent,  les  pages  de  cette  région  peuvent  être
              systématiquement lues par anticipation  et  peuvent  être  libérées  rapidement  après  avoir  été
              accédées.

       POSIX_MADV_RANDOM
              L'application  prévoit  d'accéder aléatoirement à la plage d'adresses spécifiée. Ainsi, la lecture
              anticipée sera moins utile qu'elle ne l'est en général.

       POSIX_MADV_WILLNEED
              L'application prévoit d'accéder prochainement à la plage d'adresses spécifiée. Ainsi,  la  lecture
              anticipée peut être bénéfique.

       POSIX_MADV_DONTNEED
              L'application ne prévoit pas d'accéder dans un futur proche à la plage d'adresses spécifiée.

VALEUR RENVOYÉE

       En cas de succès, posix_madvise() renvoie zéro. En cas d'erreur, un code d'erreur positif est renvoyé.

ERREURS

       EINVAL addr n'est pas un multiple de la taille de page du système ou len est négatif.

       EINVAL advice n'est pas valable.

       ENOMEM Les  adresses  de  l'intervalle  spécifié  sont partiellement ou entièrement en dehors de l'espace
              d'adressage du processus appelant.

VERSIONS

       La prise en charge de posix_madvise() est apparue pour la première fois dans la version 2.2 de la glibc.

CONFORMITÉ

       POSIX.1-2001.

NOTES

       POSIX.1 autorise l'implémentation à générer une erreur si len est 0. Sur Linux, passer  0  dans  len  est
       permis (en tant qu'opération sans effet réussie).

       Dans  la  glibc,  cette fonction est implémentée en utilisant madvise(2). Cependant, depuis la glibc 2.6,
       POSIX_MADV_DONTNEED  est  traitée  comme  une  opération  vide  parce  que  la   valeur   de   madvise(2)
       correspondante, MADV_DONTNEED, a une sémantique destructrice.

VOIR AUSSI

       madvise(2), posix_fadvise(2)

COLOPHON

       Cette page fait partie de la publication 5.10 du projet man-pages Linux. Une description du projet et des
       instructions  pour  signaler  des  anomalies et la dernière version de cette page peuvent être trouvées à
       l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La  traduction  française   de   cette   page   de   manuel   a   été   créée   par   Christophe   Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>, François Micaux, Alain Portal  <aportal@univ-montp2.fr>,  Jean-Philippe  Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,     Thomas     Huriaux      <thomas.huriaux@gmail.com>,      Nicolas      François
       <nicolas.francois@centraliens.net>,     Florentin     Duneau    <fduneau@gmail.com>,    Simon    Paillard
       <simon.paillard@resel.enst-bretagne.fr>,    Denis    Barbier    <barbier@debian.org>,    David     Prévot
       <david@tilapin.org> et Grégoire Scano <gregoire.scano@malloc.fr>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel,  veuillez  envoyer  un  message  à
       debian-l10n-french@lists.debian.org.

Linux                                           15 septembre 2017                               POSIX_MADVISE(3)