sysconf
ParametersHere are the symbolic constants for use as the parameter argument
to sysconf
. The values are all integer constants (more
specifically, enumeration type values).
_SC_ARG_MAX
¶Inquire about the parameter corresponding to ARG_MAX
.
_SC_CHILD_MAX
¶Inquire about the parameter corresponding to CHILD_MAX
.
_SC_OPEN_MAX
¶Inquire about the parameter corresponding to OPEN_MAX
.
_SC_STREAM_MAX
¶Inquire about the parameter corresponding to STREAM_MAX
.
_SC_TZNAME_MAX
¶Inquire about the parameter corresponding to TZNAME_MAX
.
_SC_NGROUPS_MAX
¶Inquire about the parameter corresponding to NGROUPS_MAX
.
_SC_JOB_CONTROL
¶Inquire about the parameter corresponding to _POSIX_JOB_CONTROL
.
_SC_SAVED_IDS
¶Inquire about the parameter corresponding to _POSIX_SAVED_IDS
.
_SC_VERSION
¶Inquire about the parameter corresponding to _POSIX_VERSION
.
_SC_CLK_TCK
¶Inquire about the number of clock ticks per second; see CPU Time Inquiry.
The corresponding parameter CLK_TCK
is obsolete.
_SC_CHARCLASS_NAME_MAX
¶Inquire about the parameter corresponding to maximal length allowed for a character class name in an extended locale specification. These extensions are not yet standardized and so this option is not standardized as well.
_SC_REALTIME_SIGNALS
¶Inquire about the parameter corresponding to _POSIX_REALTIME_SIGNALS
.
_SC_PRIORITY_SCHEDULING
¶Inquire about the parameter corresponding to _POSIX_PRIORITY_SCHEDULING
.
_SC_TIMERS
¶Inquire about the parameter corresponding to _POSIX_TIMERS
.
_SC_ASYNCHRONOUS_IO
¶Inquire about the parameter corresponding to _POSIX_ASYNCHRONOUS_IO
.
_SC_PRIORITIZED_IO
¶Inquire about the parameter corresponding to _POSIX_PRIORITIZED_IO
.
_SC_SYNCHRONIZED_IO
¶Inquire about the parameter corresponding to _POSIX_SYNCHRONIZED_IO
.
_SC_FSYNC
¶Inquire about the parameter corresponding to _POSIX_FSYNC
.
_SC_MAPPED_FILES
¶Inquire about the parameter corresponding to _POSIX_MAPPED_FILES
.
_SC_MEMLOCK
¶Inquire about the parameter corresponding to _POSIX_MEMLOCK
.
_SC_MEMLOCK_RANGE
¶Inquire about the parameter corresponding to _POSIX_MEMLOCK_RANGE
.
_SC_MEMORY_PROTECTION
¶Inquire about the parameter corresponding to _POSIX_MEMORY_PROTECTION
.
_SC_MESSAGE_PASSING
¶Inquire about the parameter corresponding to _POSIX_MESSAGE_PASSING
.
_SC_SEMAPHORES
¶Inquire about the parameter corresponding to _POSIX_SEMAPHORES
.
_SC_SHARED_MEMORY_OBJECTS
¶Inquire about the parameter corresponding to
_POSIX_SHARED_MEMORY_OBJECTS
.
_SC_AIO_LISTIO_MAX
¶Inquire about the parameter corresponding to _POSIX_AIO_LISTIO_MAX
.
_SC_AIO_MAX
¶Inquire about the parameter corresponding to _POSIX_AIO_MAX
.
_SC_AIO_PRIO_DELTA_MAX
¶Inquire about the value by which a process can decrease its asynchronous I/O
priority level from its own scheduling priority. This corresponds to the
run-time invariant value AIO_PRIO_DELTA_MAX
.
_SC_DELAYTIMER_MAX
¶Inquire about the parameter corresponding to _POSIX_DELAYTIMER_MAX
.
_SC_MQ_OPEN_MAX
¶Inquire about the parameter corresponding to _POSIX_MQ_OPEN_MAX
.
_SC_MQ_PRIO_MAX
¶Inquire about the parameter corresponding to _POSIX_MQ_PRIO_MAX
.
_SC_RTSIG_MAX
¶Inquire about the parameter corresponding to _POSIX_RTSIG_MAX
.
_SC_SEM_NSEMS_MAX
¶Inquire about the parameter corresponding to _POSIX_SEM_NSEMS_MAX
.
_SC_SEM_VALUE_MAX
¶Inquire about the parameter corresponding to _POSIX_SEM_VALUE_MAX
.
_SC_SIGQUEUE_MAX
¶Inquire about the parameter corresponding to _POSIX_SIGQUEUE_MAX
.
_SC_TIMER_MAX
¶Inquire about the parameter corresponding to _POSIX_TIMER_MAX
.
_SC_PII
¶Inquire about the parameter corresponding to _POSIX_PII
.
_SC_PII_XTI
¶Inquire about the parameter corresponding to _POSIX_PII_XTI
.
_SC_PII_SOCKET
¶Inquire about the parameter corresponding to _POSIX_PII_SOCKET
.
_SC_PII_INTERNET
¶Inquire about the parameter corresponding to _POSIX_PII_INTERNET
.
_SC_PII_OSI
¶Inquire about the parameter corresponding to _POSIX_PII_OSI
.
_SC_SELECT
¶Inquire about the parameter corresponding to _POSIX_SELECT
.
_SC_UIO_MAXIOV
¶Inquire about the parameter corresponding to _POSIX_UIO_MAXIOV
.
_SC_PII_INTERNET_STREAM
¶Inquire about the parameter corresponding to _POSIX_PII_INTERNET_STREAM
.
_SC_PII_INTERNET_DGRAM
¶Inquire about the parameter corresponding to _POSIX_PII_INTERNET_DGRAM
.
_SC_PII_OSI_COTS
¶Inquire about the parameter corresponding to _POSIX_PII_OSI_COTS
.
_SC_PII_OSI_CLTS
¶Inquire about the parameter corresponding to _POSIX_PII_OSI_CLTS
.
_SC_PII_OSI_M
¶Inquire about the parameter corresponding to _POSIX_PII_OSI_M
.
_SC_T_IOV_MAX
¶Inquire about the value associated with the T_IOV_MAX
variable.
_SC_THREADS
¶Inquire about the parameter corresponding to _POSIX_THREADS
.
_SC_THREAD_SAFE_FUNCTIONS
¶Inquire about the parameter corresponding to
_POSIX_THREAD_SAFE_FUNCTIONS
.
_SC_GETGR_R_SIZE_MAX
¶Inquire about the parameter corresponding to _POSIX_GETGR_R_SIZE_MAX
.
_SC_GETPW_R_SIZE_MAX
¶Inquire about the parameter corresponding to _POSIX_GETPW_R_SIZE_MAX
.
_SC_LOGIN_NAME_MAX
¶Inquire about the parameter corresponding to _POSIX_LOGIN_NAME_MAX
.
_SC_TTY_NAME_MAX
¶Inquire about the parameter corresponding to _POSIX_TTY_NAME_MAX
.
_SC_THREAD_DESTRUCTOR_ITERATIONS
¶Inquire about the parameter corresponding to
_POSIX_THREAD_DESTRUCTOR_ITERATIONS
.
_SC_THREAD_KEYS_MAX
¶Inquire about the parameter corresponding to _POSIX_THREAD_KEYS_MAX
.
_SC_THREAD_STACK_MIN
¶Inquire about the parameter corresponding to _POSIX_THREAD_STACK_MIN
.
_SC_THREAD_THREADS_MAX
¶Inquire about the parameter corresponding to _POSIX_THREAD_THREADS_MAX
.
_SC_THREAD_ATTR_STACKADDR
¶Inquire about the parameter corresponding to
a
_POSIX_THREAD_ATTR_STACKADDR
.
_SC_THREAD_ATTR_STACKSIZE
¶Inquire about the parameter corresponding to
_POSIX_THREAD_ATTR_STACKSIZE
.
_SC_THREAD_PRIORITY_SCHEDULING
¶Inquire about the parameter corresponding to
_POSIX_THREAD_PRIORITY_SCHEDULING
.
_SC_THREAD_PRIO_INHERIT
¶Inquire about the parameter corresponding to _POSIX_THREAD_PRIO_INHERIT
.
_SC_THREAD_PRIO_PROTECT
¶Inquire about the parameter corresponding to _POSIX_THREAD_PRIO_PROTECT
.
_SC_THREAD_PROCESS_SHARED
¶Inquire about the parameter corresponding to
_POSIX_THREAD_PROCESS_SHARED
.
_SC_2_C_DEV
¶Inquire about whether the system has the POSIX.2 C compiler command,
c89
.
_SC_2_FORT_DEV
¶Inquire about whether the system has the POSIX.2 Fortran compiler
command, fort77
.
_SC_2_FORT_RUN
¶Inquire about whether the system has the POSIX.2 asa
command to
interpret Fortran carriage control.
_SC_2_LOCALEDEF
¶Inquire about whether the system has the POSIX.2 localedef
command.
_SC_2_SW_DEV
¶Inquire about whether the system has the POSIX.2 commands ar
,
make
, and strip
.
_SC_BC_BASE_MAX
¶Inquire about the maximum value of obase
in the bc
utility.
_SC_BC_DIM_MAX
¶Inquire about the maximum size of an array in the bc
utility.
_SC_BC_SCALE_MAX
¶Inquire about the maximum value of scale
in the bc
utility.
_SC_BC_STRING_MAX
¶Inquire about the maximum size of a string constant in the
bc
utility.
_SC_COLL_WEIGHTS_MAX
¶Inquire about the maximum number of weights that can necessarily be used in defining the collating sequence for a locale.
_SC_EXPR_NEST_MAX
¶Inquire about the maximum number of expressions nested within
parentheses when using the expr
utility.
_SC_LINE_MAX
¶Inquire about the maximum size of a text line that the POSIX.2 text utilities can handle.
_SC_EQUIV_CLASS_MAX
¶Inquire about the maximum number of weights that can be assigned to an
entry of the LC_COLLATE
category ‘order’ keyword in a locale
definition. The GNU C Library does not presently support locale
definitions.
_SC_VERSION
¶Inquire about the version number of POSIX.1 that the library and kernel support.
_SC_2_VERSION
¶Inquire about the version number of POSIX.2 that the system utilities support.
_SC_PAGESIZE
¶Inquire about the virtual memory page size of the machine.
getpagesize
returns the same value (see How to get information about the memory subsystem?).
_SC_NPROCESSORS_CONF
¶Inquire about the number of configured processors.
_SC_NPROCESSORS_ONLN
¶Inquire about the number of processors online.
_SC_PHYS_PAGES
¶Inquire about the number of physical pages in the system.
_SC_AVPHYS_PAGES
¶Inquire about the number of available physical pages in the system.
_SC_ATEXIT_MAX
¶Inquire about the number of functions which can be registered as termination
functions for atexit
; see Cleanups on Exit.
_SC_LEVEL1_ICACHE_SIZE
¶Inquire about the size of the Level 1 instruction cache.
_SC_LEVEL1_ICACHE_ASSOC
¶Inquire about the associativity of the Level 1 instruction cache.
_SC_LEVEL1_ICACHE_LINESIZE
¶Inquire about the line length of the Level 1 instruction cache.
On aarch64, the cache line size returned is the minimum instruction cache line size observable by userspace. This is typically the same as the L1 icache size but on some cores it may not be so. However, it is specified in the architecture that operations such as cache line invalidation are consistent with the size reported with this variable.
_SC_LEVEL1_DCACHE_SIZE
¶Inquire about the size of the Level 1 data cache.
_SC_LEVEL1_DCACHE_ASSOC
¶Inquire about the associativity of the Level 1 data cache.
_SC_LEVEL1_DCACHE_LINESIZE
¶Inquire about the line length of the Level 1 data cache.
On aarch64, the cache line size returned is the minimum data cache line size observable by userspace. This is typically the same as the L1 dcache size but on some cores it may not be so. However, it is specified in the architecture that operations such as cache line invalidation are consistent with the size reported with this variable.
_SC_LEVEL2_CACHE_SIZE
¶Inquire about the size of the Level 2 cache.
_SC_LEVEL2_CACHE_ASSOC
¶Inquire about the associativity of the Level 2 cache.
_SC_LEVEL2_CACHE_LINESIZE
¶Inquire about the line length of the Level 2 cache.
_SC_LEVEL3_CACHE_SIZE
¶Inquire about the size of the Level 3 cache.
_SC_LEVEL3_CACHE_ASSOC
¶Inquire about the associativity of the Level 3 cache.
_SC_LEVEL3_CACHE_LINESIZE
¶Inquire about the line length of the Level 3 cache.
_SC_LEVEL4_CACHE_SIZE
¶Inquire about the size of the Level 4 cache.
_SC_LEVEL4_CACHE_ASSOC
¶Inquire about the associativity of the Level 4 cache.
_SC_LEVEL4_CACHE_LINESIZE
¶Inquire about the line length of the Level 4 cache.
_SC_XOPEN_VERSION
¶Inquire about the parameter corresponding to _XOPEN_VERSION
.
_SC_XOPEN_XCU_VERSION
¶Inquire about the parameter corresponding to _XOPEN_XCU_VERSION
.
_SC_XOPEN_UNIX
¶Inquire about the parameter corresponding to _XOPEN_UNIX
.
_SC_XOPEN_REALTIME
¶Inquire about the parameter corresponding to _XOPEN_REALTIME
.
_SC_XOPEN_REALTIME_THREADS
¶Inquire about the parameter corresponding to _XOPEN_REALTIME_THREADS
.
_SC_XOPEN_LEGACY
¶Inquire about the parameter corresponding to _XOPEN_LEGACY
.
_SC_XOPEN_CRYPT
¶Inquire about the parameter corresponding to _XOPEN_CRYPT
.
The GNU C Library no longer implements the _XOPEN_CRYPT
extensions,
so ‘sysconf (_SC_XOPEN_CRYPT)’ always returns -1
.
_SC_XOPEN_ENH_I18N
¶Inquire about the parameter corresponding to _XOPEN_ENH_I18N
.
_SC_XOPEN_SHM
¶Inquire about the parameter corresponding to _XOPEN_SHM
.
_SC_XOPEN_XPG2
¶Inquire about the parameter corresponding to _XOPEN_XPG2
.
_SC_XOPEN_XPG3
¶Inquire about the parameter corresponding to _XOPEN_XPG3
.
_SC_XOPEN_XPG4
¶Inquire about the parameter corresponding to _XOPEN_XPG4
.
_SC_CHAR_BIT
¶Inquire about the number of bits in a variable of type char
.
_SC_CHAR_MAX
¶Inquire about the maximum value which can be stored in a variable of type
char
.
_SC_CHAR_MIN
¶Inquire about the minimum value which can be stored in a variable of type
char
.
_SC_INT_MAX
¶Inquire about the maximum value which can be stored in a variable of type
int
.
_SC_INT_MIN
¶Inquire about the minimum value which can be stored in a variable of type
int
.
_SC_LONG_BIT
¶Inquire about the number of bits in a variable of type long int
.
_SC_WORD_BIT
¶Inquire about the number of bits in a variable of a register word.
_SC_MB_LEN_MAX
¶Inquire about the maximum length of a multi-byte representation of a wide character value.
_SC_NZERO
¶Inquire about the value used to internally represent the zero priority level for the process execution.
_SC_SSIZE_MAX
¶Inquire about the maximum value which can be stored in a variable of type
ssize_t
.
_SC_SCHAR_MAX
¶Inquire about the maximum value which can be stored in a variable of type
signed char
.
_SC_SCHAR_MIN
¶Inquire about the minimum value which can be stored in a variable of type
signed char
.
_SC_SHRT_MAX
¶Inquire about the maximum value which can be stored in a variable of type
short int
.
_SC_SHRT_MIN
¶Inquire about the minimum value which can be stored in a variable of type
short int
.
_SC_UCHAR_MAX
¶Inquire about the maximum value which can be stored in a variable of type
unsigned char
.
_SC_UINT_MAX
¶Inquire about the maximum value which can be stored in a variable of type
unsigned int
.
_SC_ULONG_MAX
¶Inquire about the maximum value which can be stored in a variable of type
unsigned long int
.
_SC_USHRT_MAX
¶Inquire about the maximum value which can be stored in a variable of type
unsigned short int
.
_SC_NL_ARGMAX
¶Inquire about the parameter corresponding to NL_ARGMAX
.
_SC_NL_LANGMAX
¶Inquire about the parameter corresponding to NL_LANGMAX
.
_SC_NL_MSGMAX
¶Inquire about the parameter corresponding to NL_MSGMAX
.
_SC_NL_NMAX
¶Inquire about the parameter corresponding to NL_NMAX
.
_SC_NL_SETMAX
¶Inquire about the parameter corresponding to NL_SETMAX
.
_SC_NL_TEXTMAX
¶Inquire about the parameter corresponding to NL_TEXTMAX
.
_SC_MINSIGSTKSZ
¶Inquire about the minimum number of bytes of free stack space required in order to guarantee successful, non-nested handling of a single signal whose handler is an empty function.
_SC_SIGSTKSZ
¶Inquire about the suggested minimum number of bytes of stack space required for a signal stack.
This is not guaranteed to be enough for any specific purpose other than the invocation of a single, non-nested, empty handler, but nonetheless should be enough for basic scenarios involving simple signal handlers and very low levels of signal nesting (say, 2 or 3 levels at the very most).
This value is provided for developer convenience and to ease migration
from the legacy SIGSTKSZ
constant. Programs requiring stronger
guarantees should avoid using it if at all possible.