bionic (3) sysconf.3.gz

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

NOM

       sysconf - Obtenir des informations de configuration au moment de l'exécution

SYNOPSIS

       #include <unistd.h>

       long sysconf(int name);

DESCRIPTION

       POSIX  permet  à  une  application  de tester à la compilation ou à l'exécution si certaines options sont
       gérées ou de déterminer quelles sont les valeurs de certaines limites ou constantes configurables.

       Ceci est fait à la compilation en incluant <unistd.h>  et/ou  <limits.h>  et  en  testant  la  valeur  de
       certaines macros.

       Pendant  l'exécution, vous pouvez obtenir les valeurs numériques en utilisant la fonction sysconf(). Vous
       pouvez obtenir les valeurs numériques, qui peuvent dépendre  du  système  de  fichiers,  relatives  à  un
       fichier  en  utilisant les appels fpathconf(3) et pathconf(3). Vous pouvez obtenir les valeurs de chaînes
       en utilisant confstr(3).

       Les valeurs obtenues à partir de ces fonctions sont des constantes de configuration du système. Elles  ne
       seront donc pas modifiées pendant la durée de vie d'un processus.

       Pour  les  options,  il  y  a  typiquement une constante symbolique _POSIX_FOO qui peut être définie dans
       <unistd.h>. Si elle n'est pas définie, vous pouvez poser la question à l'exécution. Si elle est définie à
       -1,  c'est  que  l'option  n'est pas supportée. Si elle est définie à 0, les en-têtes et les fonctions en
       rapport existent mais vous devrez demander  pendant  l'exécution  quel  degré  de  prise  en  charge  est
       disponible.  Si  elle est définie à une autre valeur que -1 ou 0, l'option est supportée. Habituellement,
       la valeur (comme par exemple 200112L) indique l'année  et  le  mois  de  la  révision  POSIX  qui  décrit
       l'option.  Glibc  utilise  la valeur 1 pour indiquer le support aussi longtemps que la révision POSIX n'a
       pas  été  publiée.  L'argument  de  sysconf()  sera  _SC_FOO.  Pour  la  liste  des  options,   consultez
       posixoptions(7).

       Pour  les variables ou les limites, il s'agit typiquement d'une constante _FOO, pouvant être définie dans
       <limits.h>, ou _POSIX_FOO, pouvant être définie dans <unistd.h>. La constante ne sera pas définie  si  la
       limite n'est pas indiquée. Si la constante est définie, cela donne une valeur garantie et une valeur plus
       grande pourrait être supportée. Si une application veut tirer parti des valeurs pouvant varier entre  les
       systèmes, l'appel de sysconf() permet d'obtenir ces informations. L'argument de sysconf() sera _SC_FOO.

   Variables POSIX.1
       Nous  allons  donner  le  nom de la variable, le nom du paramètre passé à sysconf() pour s'enquérir de sa
       valeur et une brève description.

       Tout d'abord, les valeurs compatibles POSIX.1.

       ARG_MAX - _SC_ARG_MAX
              La longueur maximale des arguments  des  fonctions  de  la  famille  exec(3).  Ne  doit  pas  être
              inférieure à _POSIX_ARG_MAX (4096).

       CHILD_MAX - _SC_CHILD_MAX
              Le nombre maximal de processus simultanés pour un UID. Ne doit pas être moins que _POSIX_CHILD_MAX
              (25).

       HOST_NAME_MAX - _SC_HOST_NAME_MAX
              La longueur maximale d'un nom d'hôte, sans inclure le caractère nul final, tel qu'il est  retourné
              par gethostname(2). Ne doit pas être inférieure à _POSIX_HOST_NAME_MAX (255).

       LOGIN_NAME_MAX - _SC_LOGIN_NAME_MAX
              La  longueur  maximale d'un nom de connexion (login), incluant le caractère nul final. Ne doit pas
              être inférieure à _POSIX_LOGIN_NAME_MAX (9).

       tops d'horloge - _SC_CLK_TCK
              Le nombre de tops d'horloge par seconde. La macro correspondante est obsolète. Il s'agit bien  sûr
              de CLK_TCK (veuillez noter que la macro CLOCKS_PER_SEC ne donne pas d'information : elle doit être
              égale à 1000000).

       OPEN_MAX - _SC_OPEN_MAX
              Le nombre maximal de fichiers qu'un processus peut ouvrir simultanément. Ne doit  pas  être  moins
              que _POSIX_OPEN_MAX (20).

       PAGESIZE - _SC_PAGESIZE
              Taille  d'une  page  en  octets.  Ne  doit  pas  être  inférieure à 1 (certains systèmes utilisent
              PAGE_SIZE à la place).

       RE_DUP_MAX - _SC_RE_DUP_MAX
              Le  nombre  maximal  de  répétitions  d'une  expression  rationelle  permises  par  regexec(3)  et
              regcomp(3). Ne doit pas être inférieur à _POSIX2_RE_DUP_MAX (255).

       STREAM_MAX - _SC_STREAM_MAX
              Le  nombre  maximal de flux qu'un processus peut ouvrir simultanément. Si elle est définie, elle a
              la même valeur que la macro C standard FOPEN_MAX. Ne doit pas  être  moins  que  _POSIX_STREAM_MAX
              (8).

       SYMLOOP_MAX - _SC_SYMLOOP_MAX
              Le  nombre maximal de liens symboliques rencontrés dans le nom d'un chemin avant que la résolution
              ne retourne ELOOP. Ne doit pas être inférieur à _POSIX_SYMLOOP_MAX (8).

       TTY_NAME_MAX - _SC_TTY_NAME_MAX
              La longueur maximale du nom d'un périphérique terminal, incluant le NUL final. Ne  doit  pas  être
              inférieure à _POSIX_TTY_NAME_MAX (9).

       TZNAME_MAX - _SC_TZNAME_MAX
              Le  nombre  maximal  de  caractères  dans  le  nom d'un fuseau horaire. Ne doit pas être moins que
              _POSIX_TZNAME_MAX (6).

       _POSIX_VERSION - _SC_VERSION
              Indique l'année et le mois où la norme POSIX.1 a été approuvé, en utilisant le format AAAAMML.  La
              valeur 199009L correspond à la révision de septembre 1990.

   Variables POSIX.2
       Ensuite, les constantes POSIX.2 donnant les limites pour les utilitaires.

       BC_BASE_MAX - _SC_BC_BASE_MAX
              La valeur maximale pour obase acceptée par l'utilitaire bc(1).

       BC_DIM_MAX - _SC_BC_DIM_MAX
              La valeur maximale des éléments autorisés dans une table par bc(1).

       BC_SCALE_MAX - _SC_BC_SCALE_MAX
              La valeur maximale pour scale autorisée par bc(1).

       BC_STRING_MAX - _SC_BC_STRING_MAX
              La longueur maximale d'une chaîne acceptée par bc(1).

       COLL_WEIGHTS_MAX - _SC_COLL_WEIGHTS_MAX
              Le  nombre  maximal  de  poids  à  affecter  à  une  entrée  dans l'ordre LC_COLLATE du fichier de
              définition de localisation.

       EXPR_NEST_MAX - _SC_EXPR_NEST_MAX
              Le nombre maximal d'expressions imbriquées entre parenthèses dans expr(1).

       LINE_MAX - _SC_LINE_MAX
              La longueur maximale d'une ligne d'entrée d'un utilitaire, aussi bien depuis l'entrée standard que
              depuis un fichier. Cette longueur comprend l'emplacement du caractère final « nouvelle ligne ».

       RE_DUP_MAX - _SC_RE_DUP_MAX
              Le  nombre  maximal  de  répétitions  d'une  expression rationnelle quand la notation d'intervalle
              \{m,n\} est utilisée.

       POSIX2_VERSION - _SC_2_VERSION
              La version de la norme POSIX.2 au format AAAAMML.

       POSIX2_C_DEV - _SC_2_C_DEV
              Indique si les utilitaires POSIX.2 de développement en C sont supportés.

       POSIX2_FORT_DEV - _SC_2_FORT_DEV
              Indique si les utilitaires POSIX.2 de développement en FORTRAN sont supportés.

       POSIX2_FORT_RUN - _SC_2_FORT_RUN
              Indique si les utilitaires POSIX.2 d'exécution FORTRAN sont prises en charge.

       _POSIX2_LOCALEDEF - _SC_2_LOCALEDEF
              Indique si la création de localisation POSIX.2 avec localedef(1) est supportée.

       POSIX2_SW_DEV - _SC_2_SW_DEV
              Indique si les utilitaires POSIX.2 de développement sont supportés.

       Quelques valeurs existent sans appartenir à une norme :

        - _SC_PHYS_PAGES
              Le nombre de pages de mémoire physique. Notez qu'il est possible que le produit de cette valeur et
              de la valeur _SC_PAGE_SIZE déclenche un débordement.

        - _SC_AVPHYS_PAGES
              Le nombre de pages de mémoire physique actuellement disponibles.

        - _SC_NPROCESSORS_CONF
              Le nombre de processeurs configurés.

        - _SC_NPROCESSORS_ONLN
              Le nombre de processeurs actuellement en ligne (disponibles).

VALEUR RENVOYÉE

       Si  name  est invalide, -1 est renvoyée et errno est mis à EINVAL. Sinon, la valeur renvoyée est celle de
       la ressource système correspondante et errno n'est pas  modifiée.  Dans  le  cas  d'options,  une  valeur
       positive  est  renvoyée  si  l'option  requise  est disponible et -1 si elle ne l'est pas. Dans le cas de
       limites, -1 signifie qu'aucune limite n'est définie.

CONFORMITÉ

       POSIX.1-2001.

BOGUES

       Il est difficile d'utiliser ARG_MAX car il n'est pas précisé combien d'espace d'argument de  exec(3)  est
       utilisé par les variables d'environnement de l'utilisateur.

       Certaines  valeurs  renvoyées  peuvent  être  énormes ;  elles  ne sont pas utilisables pour réaliser des
       allocations mémoires.

VOIR AUSSI

       bc(1), expr(1), getconf(1), locale(1), confstr(3), fpathconf(3), pathconf(3), posixoptions(7)

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). Nicolas François  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> ».