sysconf

SYSCONF(3)                 Manuel du programmeur Linux                SYSCONF(3)



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.

       At run time, one can ask for numerical values using the present function
       sysconf().  One can ask for numerical values that may depend on the
       filesystem in which a file resides using fpathconf(3)  and pathconf(3).
       One can ask for string values using 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).

       NGROUPS_MAX - _SC_NGROUPS_MAX
              Maximum number of supplementary group IDs.

       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
              Size of a page in bytes.  Must not be less than 1.

       PAGE_SIZE - _SC_PAGE_SIZE
              A synonym for PAGESIZE/_SC_PAGESIZE.  (Both PAGESIZE and PAGE_SIZE
              are specified in POSIX.)

       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
              indicates the maximum numbers of weights that can be assigned to
              an entry of the LC_COLLATE order keyword in the locale definition
              file.

       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
              indicates whether the POSIX.2 creation of locales via localedef(1)
              is supported.

       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
              The number of processors configured.  See also get_nprocs_conf(3).

        - _SC_NPROCESSORS_ONLN
              The number of processors currently online (available).  See also
              get_nprocs_conf(3).

VALEUR RENVOYÉE
       The return value of sysconf()  is one of the following:

       *  On error, -1 is returned and errno is set to indicate the cause of the
          error (for example, EINVAL, indicating that name is invalid).

       *  If name corresponds to a maximum or minimum limit, and that limit is
          indeterminate, -1 is returned and errno is not changed.  (To
          distinguish an indeterminate limit from an error, set errno to zero
          before the call, and then check whether errno is nonzero when -1 is
          returned.)

       *  If name corresponds to an option, a positive value is returned if the
          option is supported, and -1 is returned if the option is not
          supported.

       *  Otherwise, the current value of the option or limit is returned.  This
          value will not be more restrictive than the corresponding value that
          was described to the application in <unistd.h> or <limits.h> when the
          application was compiled.

ERREURS
       EINVAL name is invalid.

ATTRIBUTS
       Pour une explication des termes utilisés dans cette section, consulter
       attributes(7).

       ┌──────────┬──────────────────────┬─────────────┐
       │Interface Attribut             Valeur      │
       ├──────────┼──────────────────────┼─────────────┤
       │sysconf() │ Sécurité des threads │ MT-Safe env │
       └──────────┴──────────────────────┴─────────────┘
CONFORMITÉ
       POSIX.1-2001, POSIX.1-2008.

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 5.10 du projet man-pages Linux.
       Une description du projet et des instructions pour signaler des anomalies
       et la dernière version de cette page peuvent être trouvées à l'adresse
       https://www.kernel.org/doc/man-pages/.


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> et David Prévot <david@tilapin.org>

       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 ⟨⟩.




GNU                                9 mai 2019                         SYSCONF(3)