Provided by: manpages-fr-dev_4.18.1-1_all bug

NOM

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

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <sys/mman.h>

       int posix_madvise(void addr[.len], 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() a été ajoutée dans la glibc 2.2.

STANDARDS

       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)

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  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  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⟩.