Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

sysconf - numerischen Wert einer Systemvariablen ermitteln

&pagelevel(4)&pagelevel

Definition

#include <unistd.h>

long int sysconf(int name);

Beschreibung

Mit sysconf() kann der aktuelle numerische Wert einer konfigurierbaren Systemvariablen name ermittelt werden. Dies sind konfigurierbare Grenzwerte des Betriebssystems.

Die folgende Tabelle stellt die Systemvariablen aus den Dateien limits.h, unistd.h oder time.h zusammen, deren Werte mit sysconf() ermittelt werden können; die symbolischen Konstanten sind in unistd.h definiert. Sie enthalten die abfragbaren Werte für name:

Systemvariable

Wert von name (Konstante)

ARG_MAX

_SC_ARG_MAX

AIO_LISTIO_MAX

_SC_AIO_LISTIO_MAX

AIO_MAX

_SC_AIO_MAX

AIO_PRIO_DELTA_MAX

_SC_AIO_PRIO_DELTA_MAX

BC_BASE_MAX

_SC_BC_BASE_MAX

BC_DIM_MAX

_SC_BC_DIM_MAX

BC_SCALE_MAX

_SC_BC_SCALE_MAX

BC_STRING_MAX

_SC_BC_STRING_MAX

CHILD_MAX

_SC_CHILD_MAX

CLK_TCK

_SC_CLK_TCK

COLL_WEIGHTS_MAX

_SC_COLL_WEIGHTS_MAX

DELAYTIMER_MAX

_SC_DELAYTIMER_MAX

EXPR_NEST_MAX

_SC_EXPR_NEST_MAX

LINE_MAX

_SC_LINE_MAX

LOGIN_NAME_MAX

_SC_LOGIN_NAME_MAX

NGROUPS_MAX

_SC_NGROUPS_MAX

MQ_OPEN_MAX

_SC_MQ_OPEN_MAX

MQ_PRIO_MAX

_SC_MQ_PRIO_MAX

OPEN_MAX

_SC_OPEN_MAX

POSIX_ASYNCHRONOUS_IO

_SC_ASYNCHRONOUS_IO

_POSIX_FSYNC

_SC_FSYNC

_POSIX_MAPPED_FILES

_SC_MAPPED_FILES

_POSIX_MEMLOCK

_SC_MEMLOCK

_POSIX_MEMLOCK_RANGE

_SC_MEMLOCK_RANGE

_POSIX_MEMORY_PROTECTION

_SC_MEMORY_PROTECTION

_POSIX_MESSAGE_PASSING

_SC_MESSAGE_PASSING

_POSIX_PRIORITIZED_IO

_SC_PRIORITIZED_IO

_POSIX_PRIORITY_SCHEDULING

_SC_PRIORITY_SCHEDULING

_POSIX_REALTIME_SIGNALS

_SC_REALTIME_SIGNALS

_POSIX_SEMAPHORES

_SC_SEMAPHORES

_POSIX_SHARED_MEMORY_OBJECTS

_SC_SHARED_MEMORY_OBJECTS

_POSIX_SYNCHRONIZED_IO

_SC_SYNCHRONIZED_IO

_POSIX_THREADS

_SC_THREADS

_POSIX_THREAD_ATTR_STACKADDR

_SC_THREAD_ATTR_STACKADDR

_POSIX_THREAD_ATTR_STACKSIZE

_SC_THREAD_ATTR_STACKSIZE

_POSIX_THREAD_PRIORITY_SCHEDULING

_SC_THREAD_PRIORITY_SCHEDULING

_POSIX_THREAD_PRIO_INHERIT

_SC_THREAD_PRIO_INHERIT

_POSIX_THREAD_PRIO_PROTECT

_SC_THREAD_PRIO_PROTECT

_POSIX_THREAD_PROCESS_SHARED

_SC_THREAD_PROCESS_SHARED

_POSIX_THREAD_SAFE_FUNCTIONS

_SC_THREAD_SAFE_FUNCTIONS

_POSIX_TIMERS

_SC_TIMERS

_POSIX2_C_BIND

_SC_2_C_BIND

_POSIX2_C_DEV

_SC_2_C_DEV

_POSIX2_C_VERSION

_SC_2_C_VERSION

_POSIX2_CHAR_TERM

_SC_2_CHAR_TERM

_POSIX2_FORT_DEV

_SC_2_FORT_DEV

_POSIX2_FORT_RUN

_SC_2_FORT_RUN

_POSIX2_LOCALEDEF

_SC_2_LOCALEDEF

_POSIX2_SW_DEV

_SC_2_SW_DEV

_POSIX2_UPE

_SC_2_UPE

_POSIX2_VERSION

_SC_2_VERSION

_POSIX_JOB_CONTROL

_SC_JOB_CONTROL

_POSIX_SAVED_IDS

_SC_SAVED_IDS

_POSIX_VERSION

_SC_VERSION

PTHREAD_DESTRUCTOR_ITERATIONS

_SC_THREAD_DESTRUCTOR_ITERATIONS

PTHREAD_KEYS_MAX

_SC_THREAD_KEYS_MAX

PTHREAD_STACK_MIN

_SC_THREAD_STACK_MIN

PTHREAD_THREADS_MAX

_SC_THREAD_THREADS_MAX

PTHREAD_DESTRUCTOR_ITERATIONS

_SC_THREAD_DESTRUCTOR_ITERATIONS

PTHREAD_KEYS_MAX

_SC_THREAD_KEYS_MAX

PTHREAD_STACK_MIN

_SC_THREAD_STACK_MIN

PTHREAD_THREADS_MAX

_SC_THREAD_THREADS_MAX

RE_DUP_MAX

_SC_RE_DUP_MAX

RTSIG_MAX

_SC_RTSIG_MAX

SEM_NSEMS_MAX

_SC_SEM_NSEMS_MAX

SEM_VALUE_MAX

_SC_SEM_VALUE_MAX

STREAM_MAX

_SC_STREAM_MAX

SIGQUEUE_MAX

_SC_SIGQUEUE_MAX

TIMER_MAX

_SC_TIMER_MAX

TTY_NAME_MAX

_SC_TTY_NAME_MAX

TZNAME_MAX

_SC_TZNAME_MAX

Maximale Größe des Datenpuffers für die Funktionen getgrgid_r() und getgrnam_r()

_SC_GETGR_R_SIZE_MAX

Maximale Größe des Datenpuffers für die Funktionen getpwnam_r() und getpwuid_r()

_SC_GETPW_R_SIZE_MAX

Returnwert

aktueller numerischer Wert von name

 

bei Erfolg. Der Returnwert ist nicht niedriger als der entsprechende Wert in der Anwendung, wenn diese mit limits.h oder unistd.h der jeweiligen Implementierung übersetzt worden wäre. Der Wert ändert sich während der Lebensdauer des aufrufenden Prozesses nicht.

 

-1

wenn name ein ungültiger Wert ist. In diesem Fall wird errno gesetzt, um den Fehler anzuzeigen.

wenn name keinen definierten Wert hat. In diesem Fall bleibt errno unverändert.

Fehler

sysconf() schlägt fehl, wenn gilt:


EINVAL

Der Wert des Arguments name ist ungültig.

Hinweise

Da alle Ergebniswerte im Erfolgsfall erlaubt sind, sollte eine Anwendung, die Fehlersituationen überprüfen will, die Variable errno auf 0 setzen und anschließend sysconf() aufrufen. Wenn die Funktion -1 zurückgibt, sollte die Anwendung prüfen, ob errno ungleich 0 ist.

Wenn der Wert von sysconf(_SC_2_VERSION) ungleich dem Wert der symbolischen Konstanten _POSIX2_VERSION ist, verhalten sich die Kommandos, die über system() oder popen() zur Verfügung stehen, möglicherweise nicht XPG4-konform. Unabhängig davon verhalten sich die in diesem Buch beschriebenen Schnittstellen auch dann XPG4-konform, wenn sysconf(_SC_2_VERSION) meldet, dass die Kommandos sich nicht mehr so verhalten, wie es im Standard definiert ist.

Siehe auch

pathconf(), limits.h, time.h, unistd.h.