sysconf(3C) sysconf(3C)
sysconf - get configurable system variables
#include <unistd.h>
long sysconf(int name);
The sysconf function provides a method for an application to determine
the current value of a configurable system limit or option (variable).
By using this function, applications can be more portable across
different operating systems.
The name argument represents the system variable to be queried. Some of
the limits have a minimal value defined by POSIX or XPG4 which may have a
higher value under IRIX. Some limits are fixed in the system and some
may be altered by the system administrator (see systune(1M) for
information on how to change system limits). In general, the values
returned by sysconf will be constant for the duration of a process. In
various manual pages, limits are specified within braces (e.g. {ARG_MAX}.
The limit name, prepended with a _SC_ is the name to be used with
sysconf. For options such as {POSIX2_VERSION}, the name to be used as
the argument to name is the option name, minus POSIX and _SC_ prepended
(_SC_2_VERSION). The following lists the set of system variables from
<unistd.h> that can be returned by sysconf.
NAME MEANING
_SC_ARG_MAX Maximum length of arguments for the exec functions,
in bytes, including environment data.
_SC_ATEXIT_MAX Maximum number of functions that may be registered
with atexit(). This value is always set at 37 in
Irix. This value is currently not able to be changed
in Irix.
_SC_CHILD_MAX Maximum number of simultaneous processes per real
user ID.
_SC_IOV_MAX Maximum number of iovec structures that one process
has available for use with readv() or writev(). This
value is currently 512 or higher in Irix. This value
is currently not able to be changed in Irix.
_SC_CLK_TCK Clock ticks per second.
_SC_NACLS_MAX Always 0 on Irix.
Page 1
sysconf(3C) sysconf(3C)
_SC_NGROUPS_MAX Maximum number of simultaneous supplementary group
IDs per process.
_SC_OPEN_MAX Maximum number of files that one process can have
open at any given time.
_SC_PASS_MAX Maximum number of characters in a password.
_SC_PAGESIZE The memory page size of the system expressed in
bytes. This is the fundamental unit of memory
management of the operating system.
_SC_JOB_CONTROL Always 1 on Irix which supports job control.
_SC_SAVED_IDS Always 1 on Irix which supports this feature of
setuid(2).
_SC_VERSION The version of POSIX currently supported.
_SC_XOPEN_VERSION The version of X/Open currently supported.
_SC_LOGNAME_MAX Maximum number of characters in a login name.
_SC_NPROC_CONF Total number of processors configured in the machine.
_SC_NPROC_ONLN Total number of processors currently online.
_SC_STREAM_MAX The number streams that one process can have open at
one time.
_SC_TZNAME_MAX The maximum number of bytes supported for the name of
a time zone.
_SC_RTSIG_MAX The number of realtime signal values available.
_SC_SIGQUEUE_MAX The maximum number of queued signals.
_SC_REALTIME_SIGNALS
Always 1 on Irix, meaning that realtime signals are
supported.
_SC_ACL Returns 1 if Access Control Lists are supported.
_SC_AUDIT Returns 1 if Auditing is supported.
_SC_INF Returns 1 if Information Labels are supported.
_SC_MAC Returns 1 if Mandatory Access Control is supported.
_SC_CAP Returns 1 if Capabilities are supported.
Page 2
sysconf(3C) sysconf(3C)
_SC_IP_SECOPTS Returns 1 if IP Security Options are supported.
_SC_PRIORITIZED_IO Returns 1 if the POSIX 1003.1b prioritized input and
output option is supported.
_SC_AIO_MAX The maximum number of simultaneous asynchronous I/O
requests outstanding.
_SC_AIO_LISTIO_MAX The maximum number of queued asynchronous I/O
requests.
_SC_ASYNCHRONOUS_IO Always 1 on Irix, meaning that asynchronous i/o is
supported.
_SC_KERN_POINTERS Allows binaries to check if the running kernel is 32
bits or 64 bits. Possible return values for 32 bit
kernels are -1 or 32. For 64 bit kernels the return
value is 64.
_SC_KERN_SIM Allows binaries to check if the running kernel is a
32, N32, or 64 bit kernel. Possible return values
are (defined in sgidefs.h) _MIPS_SIM_ABI32,
_MIPS_SIM_NABI32, _MIPS_SIM_ABI64, and -1 for error.
_SC_DELAYTIMER_MAX Maximum number of timer expiration overruns.
_SC_MQ_OPEN_MAX The maximum number of open message queue descriptors
that a process may hold.
_SC_MQ_PRIO_MAX The maximum number of message priorities supported.
_SC_SEM_NSEMS_MAX The maximum number of semaphores that a process may
have.
_SC_SEM_VALUE_MAX The maximum value that a semaphore may have.
_SC_TIMER_MAX Maximum number of timers supported per process.
_SC_FSYNC Returns 1 if POSIX 1003.1b file synchronization is
supported.
_SC_MAPPED_FILES Returns 1 if POSIX 1003.1b mapped files option is
supported.
_SC_MEMLOCK Returns 1 if POSIX 1003.1b process memory locking
option is supported.
_SC_MEMLOCK_RANGE Returns 1 if POSIX 1003.1b range memory locking
option is supported.
Page 3
sysconf(3C) sysconf(3C)
_SC_MEMORY_PROTECTION
Returns 1 if POSIX 1003.1b memory protection option
is supported.
_SC_MESSAGE_PASSING Returns 1 if POSIX 1003.1b message passing option is
supported.
_SC_PRIORITY_SCHEDULING
Returns 1 if POSIX 1003.1b process scheduling option
is supported.
_SC_SEMAPHORES Returns 1 if POSIX 1003.1b semaphore option is
supported.
_SC_SHARED_MEMORY_OBJECTS
Returns 1 if POSIX 1003.1b shared memory object
option is supported.
_SC_SYNCHRONIZED_IO Returns 1 if POSIX 1003.1b synchronized input and
output option is supported.
_SC_TIMERS Returns 1 if POSIX 1003.1b timers option is
supported.
_SC_XOPEN_SHM If the X/Open Shared Memory Feature Group is
supported, then a value of 1 is returned. If it is
not supported then a value of -1 is returned.
_SC_BC_BASE_MAX Returns the maximum obase value allowed by the bc
utility.
_SC_BC_DIM_MAX Returns the maximum number of elements permitted in
an array by the bc utility.
_SC_BC_SCALE_MAX Returns the maximum scale value allowed by the bc
utility.
_SC_BC_STRING_MAX Returns the maximum length of a string constant
accepted by the bc utility.
_SC_COLL_WEIGHTS_MAX
Returns the maximum number of weights that can be
assigned to an entry of the LC_COLLATE order keyword
in the locale definition file.
_SC_EXPR_NEST_MAX Returns the maximum number of expressions that can be
nested within parenthesis by the expr utility.
_SC_RE_DUP_MAX Returns the maximum number of repeated occurrences of
a BRE permitted when using the interval notation
\{m,n\}.
Page 4
sysconf(3C) sysconf(3C)
_SC_LINE_MAX Returns the maximum length, in bytes, of the input
line of a utility (either standard input or another
file), when the utility is described as processing
text files. The length includes room for the
trailing <newline>. Some utilities has different
limits specified in their manual pages.
_SC_XOPEN_CRYPT The encryption routines crypt(), encrypt() and
setkey() are always provided, and hence the setting
for this X/Open Feature Group is to return the value
1. Note that in certain markets the decryption
algorithm may not be exported and in that case,
encrypt() returns ENOSYS for the decryption
operation.
_SC_2_C_BIND Returns 1 if the POSIX 1003.2 C-language development
facilities option is supported.
_SC_2_LOCALEDEF Returns 1 if the POSIX 1003.2 creation of locales
option is supported.
_SC_2_C_DEV Returns 1 if the POSIX 1003.2 C-language development
utilities option is supported.
_SC_2_C_VERSION Returns the value of POSIX2_C_VERSION which indicates
the version of the POSIX 1003.2 standard C-language
binding option that IRIX conforms to.
_SC_2_CHAR_TERM Returns 1 if the system supports at least one
terminal type capable of all operations described in
POSIX 1003.2.
_SC_2_FORT_DEV Returns 1 if the POSIX 1003.2 FORTRAN development
utilities option is supported.
_SC_2_FORT_RUN Returns 1 if the POSIX 1003.2 FORTRAN runtime
utilities option is supported.
_SC_2_SW_DEV Returns 1 if the POSIX 1003.2 software development
utilities option is supported.
_SC_2_UPE Returns 1 if the POSIX 1003.2 user portability
utilities option is supported.
_SC_XOPEN_ENH_I18N Returns 1 if the X/Open enhanced internationalization
feature group is supported.
_SC_2_VERSION Returns the value of POSIX2_VERSION which indicates
the version of the POSIX 1003.2 standard that the
utilities in IRIX conform to.
Page 5
sysconf(3C) sysconf(3C)
_SC_GETGR_R_SIZE_MAX
Maximum size of getgrgid_r_SC_GETPW_R_SIZE_MAX
Maximum size of getpwuid_r(3C) and getpwnam_r(3C)
data buffers.
_SC_LOGIN_NAME_MAX The size of storage required for a login name, in
bytes, including the terminating null.
_SC_THREAD_DESTRUCTORS_ITERATIONS
The number of attempts made to destroy a thread's
thread-specific data values on thread exit.
_SC_THREAD_KEYS_MAX The number of data keys per process.
_SC_THREAD_STACK_MIN
The minimum size in bytes required for a thread
stack.
_SC_THREAD_THREADS_MAX
The number of threads per process.
_SC_TTY_NAME_MAX The size of storage required for a terminal device
name, in bytes, including the terminating null.
_SC_THREADS Returns 1 if the POSIX 1003.1c threads option is
supported.
_SC_THREAD_ATTR_STACKADDR
Returns 1 if the POSIX 1003.1c thread stack address
attribute option is supported.
_SC_THREAD_ATTR_STACKSIZE
Returns 1 if the POSIX 1003.1c thread stack size
attribute option is supported.
_SC_THREAD_PRIORITY_SCHEDULING
Returns 1 if the POSIX 1003.1c thread execution
scheduling option is supported.
_SC_THREAD_PRIO_INHERIT
Returns 1 if the POSIX 1003.1c priority inheritance
option is supported.
_SC_THREAD_PRIO_PROTECT
Returns 1 if the POSIX 1003.1c priority protection
option is supported.
Page 6
sysconf(3C) sysconf(3C)
_SC_THREAD_PROCESS_SHARED
Returns 1 if the POSIX 1003.1c process-shared
synchronization option is supported.
_SC_THREAD_SAFE_FUNCTIONS
Returns 1 if the POSIX 1003.1c thread-safe functions
option is supported.
_SC_MMAP_FIXED_ALIGNMENT
The minimum alignment required for MAP_FIXED mmap(2)
calls. This is the same as _SC_PAGESIZE except on
the MIPS R4000PC, R4600 and R5000 processors.
_SC_SOFTPOWER Returns 1 if softpower is supported.
_SC_XBS5_ILP32_OFF32
Always 1 on IRIX, since the compilation model -o32 is
always supported.
_SC_XBS5_ILP32_OFFBIG
Always 1 on IRIX, since the compilation model -n32 is
always supported.
_SC_XBS5_LP64_OFF64 Returns 1 if the -64 compilation model is supported
on this platform, -1 otherwise.
_SC_XBS5_LPBIG_OFFBIG
Returns 1 if the -64 compilation model is supported
on this platform, -1 otherwise.
_SC_XOPEN_LEGACY If the X/Open Legacy Feature Group is supported, then
a value of 1 is returned. If it is not supported
then a value of -1 is returned. Always 1 on IRIX and
the Legacy features supported designated by the word
LEGACY in the individual man pages.
fpathconf(2), sysconf(1), systune(1M).
If name is an invalid value, sysconf will return -1 and set errno to
indicate the error. If sysconf fails due to a value of name that is not
defined on the system, the function will return a value of -1 without
changing the value of errno.
A call to setrlimit may cause the value of OPEN_MAX to change.
PPPPaaaaggggeeee 7777 [ Back ]
|