Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       get_mempolicy - Lire la politique mémoire NUMA d'un processus

SYNOPSIS

       #include <numaif.h>

       int get_mempolicy(int *mode, unsigned long *nodemask,
                         unsigned long maxnode, unsigned long addr,
                         unsigned long flags);

       Effectuez l'édition des liens avec l'option -lnuma.

DESCRIPTION

       get_mempolicy()  lit la politique NUMA du processus appelant ou d'une adresse en mémoire, selon la valeur
       de flags.

       Une machine NUMA a différents contrôleurs mémoire  à  différentes  distances  de  CPU  particulières.  La
       politique de la mémoire définit à partir de quel nœud la mémoire pour ce processus sera allouée.

       Si  flags  est  nul,  la  politique  par  défaut du processus appelant (définie par set_mempolicy(2)) est
       renvoyée. La politique renvoyée  (mode  et  nodemask)  peut  être  utilisée  avec  set_mempolicy(2)  pour
       restaurer la politique du processus dans son état au moment de l'appel à get_mempolicy().

       Si  flags  indique  MPOL_F_MEMS_ALLOWED (disponible depuis Linux 2.6.24), le paramètre mode est ignoré et
       l'ensemble des nœuds (mémoires) que le processus est autorisé à  utiliser  dans  les  appels  suivants  à
       mbind(2)  ou  set_mempolicy(2) (en l'absence de drapeaux de mode) est renvoyé dans nodemask. Il n'est pas
       permit de combiner MPOL_F_MEMS_ALLOWED avec MPOL_F_ADDR ou MPOL_F_NODE.

       Si flags indique MPOL_F_ADDR, l'information renvoyée  concerne  la  politique  gouvernant  la  mémoire  à
       l'adresse  addr. Cette politique peut être différente de la politique par défaut du processus si mbind(2)
       ou une des fonctions d'aide décrites dans numa(3) a été utilisée pour mettre en place une politique  pour
       la page contenant l'adresse addr.

       Si  le  paramètre  mode  n'est pas NULL, get_mempolicy() stockera le mode de politique et tout drapeau de
       mode optionnel de la politique NUMA requise à l'endroit pointé par ce paramètre. Si  nodemask  n'est  pas
       NULL,  le  masque  de  nœud  associé à la politique sera stockée à l'emplacement pointé par cet argument.
       maxnode spécifie le nombre d'identifiants de nœuds qui peuvent être stockés dans nodemask,  c'est-à-dire,
       la  valeur  maximale  de  l'identifiant  de  nœud  plus  un. La valeur indiquée dans maxnode est toujours
       arrondie à un multiple de sizeof(unsigned long).

       Si flags indique à la fois MPOL_F_NODE et MPOL_F_ADDR, get_mempolicy() renverra, à l'endroit  pointé  par
       mode,  l'identifiant de nœud du nœud sur lequel l'adresse addr est allouée. Si aucune page n'a encore été
       allouée pour l'adresse spécifiée, get_mempolicy() allouera une page comme si le processus  avait  réalisé
       un  accès  en lecture [chargement] à cette adresse, et renverra l'identifiant du nœud où cette page a été
       allouée.

       Si flags indique MPOL_F_NODE mais pas MPOL_F_ADDR et  que  la  politique  actuelle  est  MPOL_INTERLEAVE,
       get_mempolicy()  renverra à l'endroit pointé par un paramètre mode non nul l'identifiant du prochain nœud
       à utiliser pour l'entrelacement des pages internes du noyau allouées au nom du processus. Ces allocations
       incluent des pages pour les fichiers de mémoire projetée dans les plages de mémoire projetée du processus
       en utilisant l'appel mmap(2) avec l'attribut MAP_PRIVATE pour les accès en lecture, et dans les plages de
       mémoire projetée avec l'attribut MAP_SHARED pour tous les autres accès.

       D'autres valeurs d'attribut sont réservées.

       Pour un survol des politiques possibles, consultez set_mempolicy(2).

VALEUR RENVOYÉE

       get_mempolicy() renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.

ERREURS

       EFAULT Une  partie de la plage mémoire spécifiée par nodemask et maxnode pointe en dehors de votre espace
              d'adressage accessible.

       EINVAL La valeur spécifiée par maxnode est inférieure au nombre d'identifiants de nœud pris en charge par
              le  système.  Ou  flags  spécifie  des  valeurs  autres  que MPOL_F_NODE ou MPOL_F_ADDR ; ou flags
              spécifie MPOL_F_ADDR et addr est NULL, ou flags ne spécifie pas  MPOL_F_ADDR  et  addr  n'est  pas
              NULL.  Ou  flags  spécifie  MPOL_F_NODE mais pas MPOL_F_ADDR et la politique actuelle du processus
              n'est pas MPOL_INTERLEAVE. Ou flags spécifie MPOL_F_MEMS_ALLOWED avec MPOL_F_ADDR ou  MPOL_F_NODE.
              (Et il y a d'autres cas pour EINVAL)

VERSIONS

       L'appel système get_mempolicy() a été ajouté au noyau Linux dans la version 2.6.7.

CONFORMITÉ

       Cet appel système est spécifique à Linux.

NOTES

       Pour des informations sur la prise en charge par des bibliothèques, consultez numa(7).

VOIR AUSSI

       getcpu(2), mbind(2), mmap(2), set_mempolicy(2), numa(3), numa(7), numactl(8)

COLOPHON

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

TRADUCTION

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

       Christophe      Blaess      <http://www.blaess.fr/christophe/>      (1996-2003),       Alain       Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de  traduction de
       Debian (2006-2009).

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

       Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C
       <section> <page_de_man> ».