Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

sysconf(3) [redhat man page]

SYSCONF(3)						     Linux Programmer's Manual							SYSCONF(3)

NAME
sysconf - Get configuration information at runtime SYNOPSIS
#include <unistd.h> long sysconf(int name); DESCRIPTION
sysconf() provides a way for the application to determine values for system limits or options at runtime. The equivalent macros defined in <unistd.h> can only give conservative values; if an application wants to take advantage of values which may change, a call to sysconf() can be made, which may yield more liberal results. For getting information about a particular file, see fpathconf() or pathconf(). The following values are supported for name. First, the POSIX.1 compatible values: _SC_ARG_MAX The maximum length of the arguments to the exec() family of functions; the corresponding macro is ARG_MAX. _SC_CHILD_MAX The number of simultaneous processes per user id, the corresponding macro is CHILD_MAX. _SC_CLK_TCK The number of clock ticks per second; the corresponding macro was CLK_TCK. This macro is obsolete now. (Note that the macro CLOCKS_PER_SEC does not give information: it must equal 1000000.) _SC_STREAM_MAX The maximum number of streams that a process can have open at any time. The corresponding POSIX macro is STREAM_MAX, the corre- sponding standard C macro is FOPEN_MAX. _SC_TZNAME_MAX The maximum number of bytes in a timezone name, the corresponding macro is TZNAME_MAX. _SC_OPEN_MAX The maximum number of files that a process can have open at any time, the corresponding macro is OPEN_MAX. _SC_JOB_CONTROL This indicates whether POSIX - style job control is supported, the corresponding macro is _POSIX_JOB_CONTROL. _SC_SAVED_IDS This indicates whether a process has a saved set-user-ID and a saved set-group-ID; the corresponding macro is _POSIX_SAVED_IDS. _SC_VERSION indicates the year and month the POSIX.1 standard was approved in the format YYYYMML;the value 199009L indicates the Sept. 1990 revision. The corresponding macro is _POSIX_VERSION. Next, the POSIX.2 values: _SC_BC_BASE_MAX indicates the maximum obase value accepted by the bc(1) utility; the corresponding macro is BC_BASE_MAX. _SC_BC_DIM_MAX indicates the maximum value of elements permitted in an array by bc(1); the corresponding macro is BC_DIM_MAX. _SC_BC_SCALE_MAX indicates the maximum scale value allowed by bc(1); the corresponding macro is BC_SCALE_MAX. _SC_BC_STRING_MAX indicates the maximum length of a string accepted by bc(1); the corresponding macro is BC_STRING_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; the corresponding macro is COLL_WEIGHTS_MAX. _SC_EXPR_NEST_MAX is the maximum number of expressions which can be nested within parentheses by expr(1). The corresponding macro is EXPR_NEST_MAX. _SC_LINE_MAX The maximum length of a utility's input line length, either from standard input or from a file. This includes length for a trailing newline. The corresponding macro is LINE_MAX. _SC_RE_DUP_MAX The maximum number of repeated occurrences of a regular expression when the interval notation {m,n} is used. The value of the cor- responding macro is RE_DUP_MAX. _SC_2_VERSION indicates the version of the POSIX.2 standard in the format of YYYYMML. The corresponding macro is POSIX2_VERSION. _SC_2_DEV indicates whether the POSIX.2 C language development facilities are supported. The corresponding macro is POSIX2_C_DEV. _SC_2_FORT_DEV indicates whether the POSIX.2 FORTRAN development utilities are supported. The corresponding macro is POSIX2_FORT_RUN. _SC_2_FORT_RUN indicates whether the POSIX.2 FORTRAN runtime utilities are supported. The corresponding macro is POSIX2_FORT_RUN. _SC_2_LOCALEDEF indicates whether the POSIX.2 creation of locates via localedef(1) is supported. The corresponding macro is _POSIX2_LOCALEDEF. _SC_2_SW_DEV indicates whether the POSIX.2 software development utilities option is supported. The corresponding macro is POSIX2_SW_DEV. SUSv2 also lists _SC_PAGESIZE _SC_PAGE_SIZE The size of a page (in bytes). These values also exist, but may not be standard. _SC_PHYS_PAGES The number of pages of physical memory. Note that it is possible for the product of this value and the value of _SC_PAGE_SIZE to overflow. _SC_AVPHYS_PAGES The number of currently available pages of physical memory. RETURN VALUE
If name is invalid, -1 is returned, and errno is set to EINVAL. Otherwise, the value returned is the value of the system resource, 1 if a queried option is available, 0 if it is not, or -1 on error, and the variable errno is not changed. CONFORMING TO
POSIX.1. BUGS
It is difficult to use ARG_MAX because it is not specified how much of the argument space for exec() is consumed by the user's environment variables. Some returned values may be huge; they are not suitable for allocating memory. SEE ALSO
bc(1), expr(1), locale(1), fpathconf(3), pathconf(3) GNU
1993-04-18 SYSCONF(3)
Man Page