| sysconf(3) | Library Functions Manual | sysconf(3) |
sysconf - Obtenir des informations de configuration au moment de l'exécution
Bibliothèque C standard (libc, -lc)
#include <unistd.h>
long sysconf(int nom);
POSIX permet à une application de tester à la compilation ou à l'exécution si certaines options sont prises en charge ou de déterminer quelles sont les valeurs de certaines limites ou constantes configurables.
Cela 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 dans lequel un fichier réside 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, cela signifie que l'option n'est pas prise en charge. 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 prise en charge. Habituellement, la valeur (par exemple 200112L) indique l'année et le mois de la révision POSIX qui décrit l'option. La glibc utilise la valeur 1 pour indiquer la prise en charge 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, elle fournit une valeur garantie et une valeur plus grande pourrait être prise en charge. 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.
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.
Ensuite, les constantes POSIX.2 donnant les limites pour les utilitaires.
Quelques valeurs existent sans appartenir à une norme :
La valeur renvoyée de sysconf() est une des suivantes :
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
| Interface | Attribut | Valeur |
| sysconf() | Sécurité des threads | MT-Safe env |
POSIX.1-2008.
POSIX.1-2001.
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.
bc(1), expr(1), getconf(1), locale(1), confstr(3), fpathconf(3), pathconf(3), posixoptions(7)
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>, David Prévot <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 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.
| 15 juin 2024 | Pages du manuel de Linux 6.9.1 |