posix_madvise(3) Library Functions Manual posix_madvise(3) NOM posix_madvise - Donner des indices sur les tendances de l'utilisation memoire BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include int posix_madvise(void addr[.len], size_t len, int advice); Exigences de macros de test de fonctionnalites pour la glibc (consulter feature_test_macros(7)) : posix_madvise() : _POSIX_C_SOURCE >= 200112L DESCRIPTION La fonction posix_madvise() permet a un programme d'indiquer au systeme les tendances attendues de l'utilisation memoire de la plage d'adresses commencant a addr et s'etendant sur len octets. Le systeme peut utiliser ces indications afin d'ameliorer les performances d'acces memoire ou est libre de les ignorer completement, mais l'appel a posix_madvise() ne doit pas influencer la semantique des acces memoire dans la plage specifiee. L'argument advice contient une des valeurs suivantes : POSIX_MADV_NORMAL L'application n'a pas d'indice particulier concernant les tendances d'utilisation memoire pour la plage d'adresses specifiee. C'est le comportement par defaut. POSIX_MADV_SEQUENTIAL L'application prevoit d'acceder sequentiellement a la plage d'adresses specifiee, des adresses basses aux adresses hautes. Par consequent, les pages de cette region peuvent etre systematiquement lues par anticipation et peuvent etre liberees rapidement apres avoir ete accedees. POSIX_MADV_RANDOM L'application prevoit d'acceder aleatoirement a la plage d'adresses specifiee. Ainsi, la lecture anticipee sera moins utile qu'elle ne l'est en general. POSIX_MADV_WILLNEED L'application prevoit d'acceder prochainement a la plage d'adresses specifiee. Ainsi, la lecture anticipee peut etre benefique. POSIX_MADV_DONTNEED L'application ne prevoit pas d'acceder dans un futur proche a la plage d'adresses specifiee. VALEUR RENVOYEE En cas de succes, posix_madvise() renvoie zero. En cas d'erreur, un code d'erreur positif est renvoye. ERREURS EINVAL addr n'est pas un multiple de la taille de page du systeme ou len est negatif. EINVAL advice n'est pas valable. ENOMEM Les adresses de l'intervalle specifie sont partiellement ou entierement en dehors de l'espace d'adressage du processus appelant. VERSIONS POSIX.1 autorise l'implementation a generer une erreur si len est 0. Sur Linux, passer 0 dans len est permis (en tant qu'operation sans effet reussie). Dans la glibc, cette fonction est implementee en utilisant madvise(2). Cependant, depuis la glibc 2.6, POSIX_MADV_DONTNEED est traitee comme une operation vide parce que la valeur de madvise(2) correspondante, MADV_DONTNEED, a une semantique destructrice. STANDARDS POSIX.1-2008. HISTORIQUE glibc 2.2. POSIX.1-2001. VOIR AUSSI madvise(2), posix_fadvise(2) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot et Gregoire Scano Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 31 octobre 2023 posix_madvise(3)