Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SYSCONF(3)		 BSD Library Functions Manual		    SYSCONF(3)

NAME
     sysconf --	get configurable system	variables

LIBRARY
     Standard C	Library	(libc, -lc)

SYNOPSIS
     #include <unistd.h>

     long
     sysconf(int name);

DESCRIPTION
     This interface is defined by IEEE Std 1003.1-1988 ("POSIX.1").  A far
     more complete interface is	available using	sysctl(3).

     The sysconf() function provides a method for applications to determine
     the current value of a configurable system	limit or option	variable.  The
     name argument specifies the system	variable to be queried.	 Symbolic con-
     stants for	each name value	are found in the include file <unistd.h>.

     The available values are as follows:

     _SC_ARG_MAX
	     The maximum bytes of argument to execve(2).

     _SC_ATEXIT_MAX
	     The maximum number	of functions that may be registered with
	     atexit(3).

     _SC_BARRIERS
	     The version of IEEE Std 1003.1 ("POSIX.1")	and its	Barriers op-
	     tion to which the system attempts to conform, otherwise -1.

     _SC_CLOCK_SELECTION
	     Return the	POSIX version the implementation of the	Clock Selec-
	     tion Option on this system	conforms to, or	-1 if unavailable.

     _SC_CHILD_MAX
	     The maximum number	of simultaneous	processes per user id.

     _SC_CLK_TCK
	     The number	of clock ticks per second.

     _SC_FSYNC
	     Return 1 if the File Synchronization Option is available on this
	     system, otherwise -1.

     _SC_HOST_NAME_MAX
	     The maximum size of a hostname, including NULL.

     _SC_IOV_MAX
	     The maximum number	of iovec structures that a process has avail-
	     able for use with preadv(2), pwritev(2), readv(2),	recvmsg(2),
	     sendmsg(2)	or writev(2).

     _SC_JOB_CONTROL
	     Return 1 if job control is	available on this system, otherwise
	     -1.

     _SC_LOGIN_NAME_MAX
	     Returns the size of the storage required for a login name,	in
	     bytes, including the terminating NUL.

     _SC_MAPPED_FILES
	     Return 1 if the Memory Mapped Files Option	is available on	this
	     system, otherwise -1.

     _SC_MEMLOCK
	     Return 1 if the Process Memory Locking Option is available	on
	     this system, otherwise -1.

     _SC_MEMLOCK_RANGE
	     Return 1 if the Range Memory Locking Option is available on this
	     system, otherwise -1.

     _SC_MEMORY_PROTECTION
	     Return 1 if the Memory Protection Option is available on this
	     system, otherwise -1.

     _SC_MONOTONIC_CLOCK
	     Return the	POSIX version the implementation of the	Monotonic
	     Clock Option on this system conforms to, or -1 if unavailable.

     _SC_NGROUPS_MAX
	     The maximum number	of supplemental	groups.

     _SC_OPEN_MAX
	     The maximum number	of open	files per process.

     _SC_PAGESIZE
	     The size of a system page in bytes.

     _SC_PASS_MAX
	     The maximum length	of the password, not counting NULL.

     _SC_READER_WRITER_LOCKS
	     The version of IEEE Std 1003.1 ("POSIX.1")	and its	Read-Write
	     Locks option to which the system attempts to conform, otherwise
	     -1.

     _SC_REGEXP
	     Return 1 if POSIX regular expressions are available on this sys-
	     tem, otherwise -1.

     _SC_SEMAPHORES
	     The version of IEEE Std 1003.1 ("POSIX.1")	and its	Semaphores op-
	     tion to which the system attempts to conform, otherwise -1.

	     Availability of the Semaphores option depends on the
	     P1003_1B_SEMAPHORE	kernel option.

     _SC_SHELL
	     Return 1 if POSIX shell is	available on this system, otherwise
	     -1.

     _SC_SPIN_LOCKS
	     The version of IEEE Std 1003.1 ("POSIX.1")	and its	Spin Locks op-
	     tion to which the system attempts to conform, otherwise -1.

     _SC_STREAM_MAX
	     The minimum maximum number	of streams that	a process may have
	     open at any one time.

     _SC_SYMLOOP_MAX
	     The maximum number	of symbolic links that may be expanded in a
	     path name.

     _SC_SYNCHRONIZED_IO
	     Return 1 if the Synchronized I/O Option is	available on this sys-
	     tem, otherwise -1.

     _SC_THREADS
	     The version of IEEE Std 1003.1 ("POSIX.1")	and its	Threads	option
	     to	which the system attempts to conform, otherwise	-1.

     _SC_TIMERS
	     The version of IEEE Std 1003.1 ("POSIX.1")	and its	Timers option
	     to	which the system attempts to conform, otherwise	-1.

     _SC_TZNAME_MAX
	     The minimum maximum number	of types supported for the name	of a
	     timezone.

     _SC_SAVED_IDS
	     Returns 1 if saved	set-group and saved set-user ID	is available,
	     otherwise -1.

     _SC_VERSION
	     The version of ISO/IEC 9945 (POSIX	1003.1)	with which the system
	     attempts to comply.

     _SC_XOPEN_SHM
	     Return 1 if the X/Open Portability	Guide Issue 4, Version 2
	     ("XPG4.2")	Shared Memory option is	available on this system, oth-
	     erwise -1.

	     Availability of the Shared	Memory option depends on the SYSVSHM
	     kernel option.

     _SC_BC_BASE_MAX
	     The maximum ibase/obase values in the bc(1) utility.

     _SC_BC_DIM_MAX
	     The maximum array size in the bc(1) utility.

     _SC_BC_SCALE_MAX
	     The maximum scale value in	the bc(1) utility.

     _SC_BC_STRING_MAX
	     The maximum string	length in the bc(1) utility.

     _SC_COLL_WEIGHTS_MAX
	     The maximum number	of weights that	can be assigned	to any entry
	     of	the LC_COLLATE order keyword in	the locale definition file.

     _SC_EXPR_NEST_MAX
	     The maximum number	of expressions that can	be nested within
	     parenthesis by the	expr(1)	utility.

     _SC_LINE_MAX
	     The maximum length	in bytes of a text-processing utility's	input
	     line.

     _SC_RE_DUP_MAX
	     The maximum number	of repeated occurrences	of a regular expres-
	     sion permitted when using interval	notation.

     _SC_2_VERSION
	     The version of POSIX 1003.2 with which the	system attempts	to
	     comply.

     _SC_2_C_BIND
	     Return 1 if the system's C-language development facilities	sup-
	     port the C-Language Bindings Option, otherwise -1.

     _SC_2_C_DEV
	     Return 1 if the system supports the C-Language Development	Utili-
	     ties Option, otherwise -1.

     _SC_2_CHAR_TERM
	     Return 1 if the system supports at	least one terminal type	capa-
	     ble of all	operations described in	POSIX 1003.2, otherwise	-1.

     _SC_2_FORT_DEV
	     Return 1 if the system supports the FORTRAN Development Utilities
	     Option, otherwise -1.

     _SC_2_FORT_RUN
	     Return 1 if the system supports the FORTRAN Runtime Utilities Op-
	     tion, otherwise -1.

     _SC_2_LOCALEDEF
	     Return 1 if the system supports the creation of locales, other-
	     wise -1.

     _SC_2_SW_DEV
	     Return 1 if the system supports the Software Development Utili-
	     ties Option, otherwise -1.

     _SC_2_UPE
	     Return 1 if the system supports the User Portability Utilities
	     Option, otherwise -1.

     _SC_GETGR_R_SIZE_MAX
	     The minimum size of the buffer passed to getgrgid_r(3) and
	     getgrnam_r(3).

     _SC_GETPW_R_SIZE_MAX
	     The minimum size of the buffer passed to getpwnam_r(3) and
	     getpwuid_r(3).

     _SC_NPROCESSORS_CONF
	     The number	of processors configured.

     _SC_NPROCESSORS_ONLN
	     The number	of processors online (capable of running processes).

RETURN VALUES
     If	the call to sysconf is not successful, -1 is returned and errno	is set
     appropriately.  Otherwise,	if the variable	is associated with functional-
     ity that is not supported,	-1 is returned and errno is not	modified.
     Otherwise,	the current variable value is returned.

ERRORS
     The sysconf() function may	fail and set errno for any of the errors spec-
     ified for the library functions sysctl(3).	 In addition, the following
     error may be reported:

     [EINVAL]		The value of the name argument is invalid.

SEE ALSO
     getconf(1), limits(3), sysctl(3)

STANDARDS
     The sysconf() function conforms to	ISO/IEC	9945-1:1990 ("POSIX.1").  The
     constants _SC_NPROCESSORS_CONF and	_SC_NPROCESSORS_ONLN are not part of
     the standard, but are provided by many systems.

HISTORY
     The sysconf function first	appeared in 4.4BSD.

BUGS
     The value for _SC_STREAM_MAX is a minimum maximum,	and required to	be the
     same as ANSI C's FOPEN_MAX, so the	returned value is a ridiculously small
     and misleading number.

BSD				August 23, 2011				   BSD

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | STANDARDS | HISTORY | BUGS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sysconf&sektion=3&manpath=NetBSD+6.0>

home | help