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

NOM

       getauxval - Récupérer une valeur du vecteur auxiliaire

SYNOPSIS

       #include <sys/auxv.h>

       unsigned long getauxval(unsigned long type);

DESCRIPTION

       La  fonction  getauxval()  récupère  des  valeurs  du vecteur auxiliaire, un mécanisme que le chargeur de
       binaires ELF du noyau utilise pour  passer  certains  renseignements  à  l'espace  utilisateur  quand  un
       programme est exécuté.

       Toutes  les  entrées  du  vecteur  auxiliaire  sont  des paires de valeurs : un type qui identifie ce que
       l'entrée représente, et une valeur pour ce type. En fonction de l'argument type, getauxval()  renvoie  la
       valeur correspondante.

       Les valeurs renvoyées pour tous les types sont données dans la liste suivante. Les différentes valeurs de
       type ne sont pas toutes présentes suivant l'architecture.

       AT_BASE
              L'adresse de base de l'interpréteur du programme (l'éditeur de liens dynamique en général).

       AT_BASE_PLATFORM
              Une chaîne identifiant la  plateforme  réelle ;  peut  être  différente  de  AT_PLATFORM  (PowerPC
              seulement).

       AT_CLKTCK
              La  fréquence  utilisée  par  times(2)  pour  compter.  Cette  valeur peut aussi être obtenue avec
              sysconf(_SC_CLK_TCK).

       AT_DCACHEBSIZE
              La taille du bloc de cache de données.

       AT_EGID
              Le GID effectif du thread.

       AT_ENTRY
              L'adresse d'entrée de l'exécutable.

       AT_EUID
              L'UID effectif du thread.

       AT_EXECFD
              Le descripteur de fichier du programme.

       AT_EXECFN
              Le nom de chemin utilisé pour exécuter le programme.

       AT_FLAGS
              Les attributs (inutilisé).

       AT_FPUCW
              Le mot de contrôle FPU utilisé (architecture SuperH seulement). Cela donne quelques renseignements
              sur l'initialisation FPU réalisée par le noyau.

       AT_GID Le GID réel du thread.

       AT_HWCAP
              Un  pointeur  vers  un  masque  multioctet  de  bits  dont  les  réglages  indiquent des capacités
              processeurs détaillées. Le contenu du masque de bits dépend du matériel (consultez par exemple  le
              fichier  arch/x86/include/asm/cpufeature.h  des  sources  du noyau pour obtenir des précisions sur
              l'architecture  x86).  Une  version  lisible  des  mêmes  renseignements   est   disponible   dans
              /proc/cpuinfo.

       AT_ICACHEBSIZE
              La taille du bloc de cache d'instructions.

       AT_PAGESZ
              La taille de page du système (la même valeur que celle renvoyée par sysconf(_SC_PAGESIZE)).

       AT_PHDR
              L'adresse des en-têtes du programme de l'exécutable.

       AT_PHENT
              La taille de l'entrée des en-têtes du programme.

       AT_PHNUM
              Le nombre d'en-têtes du programme.

       AT_PLATFORM
              Un  pointeur vers une chaîne qui identifie la plate-forme matérielle sur laquelle le programme est
              exécuté. L'éditeur de liens dynamique utilise cela dans l'interprétation des valeurs rpath.

       AT_RANDOM
              L'adresse de seize octets contenant une valeur aléatoire.

       AT_SECURE
              Une valeur non nulle si l'exécutable devrait être traité de façon sécurisée. Le plus souvent,  une
              valeur  non  nulle  indique  que le processus exécute un programme Set-UID ou Set-GID ; sinon, une
              valeur non nulle pourrait être provoquée par un module de sécurité Linux. Quand cette  valeur  est
              non   nulle,   l'éditeur  de  liens  dynamique  désactive  l'utilisation  de  certaines  variables
              d'environnement (consultez ld-linux.so(8)) et glibc modifie d'autres facettes de son  comportement
              (consultez aussi secure_getenv(3)).

       AT_SYSINFO
              Le  point  d'entrée  vers la fonction d'appel système dans le vDSO. N'est ni présent ni nécessaire
              sur toutes les architectures (par exemple absent sur x86-64).

       AT_SYSINFO_EHDR
              L'adresse d'une page contenant le vDSO (objet partagé dynamique virtuel, « virtual dynamic  shared
              object ») que le noyau crée pour fournir des implémentations rapides de certains appels systèmes.

       AT_UCACHEBSIZE
              La taille du bloc de cache unifié.

       AT_UID L'UID réel du thread.

VALEUR RENVOYÉE

       Si  elle  réussit,  getauxval()  renvoie la valeur correspondant au type. Si type n'est pas trouvé, 0 est
       renvoyé.

ERREURS

       Aucune erreur n'est diagnostiquée.

VERSIONS

       La fonction getauxval() est disponible depuis la glibc 2.16.

ATTRIBUTS

   Multithreading (voir pthreads(7))
       La fonction getauxval() est sûre dans un contexte multithread.

CONFORMITÉ

       Cette fonction est une extension non normalisée de la glibc.

NOTES

       Le principal utilisateur des renseignements du  vecteur  auxiliaire  est  l'éditeur  de  liens  dynamique
       ld-linux.so(8).  Le  vecteur  auxiliaire  est  un  raccourci  pratique et efficace qui permet au noyau de
       communiquer un certain jeu de renseignements standards dont l'éditeur de  liens  a  souvent  ou  toujours
       besoin.  Dans  certains  cas, les mêmes renseignements pourraient être obtenus à l'aide d'appels système,
       mais l'utilisation du vecteur auxiliaire est moins coûteuse.

       Le vecteur auxiliaire réside juste au-dessus de la liste d'arguments et de l'environnement dans  l'espace
       d'adresse  du  processus. Le vecteur auxiliaire fourni à un programme peut être affiché en définissant la
       variable d'environnement LD_SHOW_AUXV lors de l'exécution d'un programme :

           $ LD_SHOW_AUXV=1 sleep 1

       Le vecteur auxiliaire de n'importe quel processus peut (en fonction des droits du  fichier)  être  obtenu
       dans /proc/PID/auxv. Consultez proc(5) pour obtenir de plus amples renseignements.

VOIR AUSSI

       secure_getenv(3), vdso(7), ld-linux.so(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/>.

       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> ».