VMS Help  —  CRTL  sysconf  Description
    The sysconf function provides a method for determining the
    current value of a configurable system limit or whether optional
    features are supported.

    You supply a symbolic constant in the name argument, and sysconf
    returns a value for the corresponding system variable:

    o  The symbolic constants defined in the <unistd.h> header file.

    o  The system variables are defined in the <limits.h> and
       <unistd.h> header files.

    sysconf Argument and Return Values lists the system variables
    returned by the sysconf function, and the symbolic constants that
    you can supply as the name value.

    Table REF-10 sysconf Argument and Return Values

                      Symbolic
    System Variable   Constant for
    Returned          name           Meaning

    ISO POSIX-1

    ARG_MAX           _SC_ARG_MAX    The maximum length, in bytes,
                                     of the arguments for one of
                                     the exec functions, including
                                     environment data.
    CHILD_MAX         _SC_CHILD_     The maximum number of
                      MAX            simultaneous processes for each
                                     real user ID.
    CLK_TCK           _SC_CLK_TCK    The number of clock ticks per
                                     second. The value of CLK_TCK
                                     can be variable. Do not assume
                                     that CLK_TCK is a compile-time
                                     constant.
    NGROUPS_MAX       _SC_NGROUPS_   The maximum number of
                      MAX            simultaneous supplementary group
                                     IDs for each process.
    OPEN_MAX          _SC_OPEN_MAX   The maximum number of files that
                                     one process can have open at one
                                     time.
    STREAM_MAX        _SC_STREAM_    The number of streams that one
                      MAX            process can have open at one
                                     time.
    TZNAME_MAX        _SC_TZNAME_    The maximum number of bytes
                      MAX            supported for the name of a time
                                     zone (not the length of the TZ
                                     environmental variable).
    _POSIX_JOB_       _SC_JOB_       This variable has a value of
    CONTROL           CONTROL        1 if the system supports job
                                     control; otherwise, -1 is
                                     returned.
    _POSIX_SAVED_IDS  _SC_SAVED_     This variable has a value of 1
                      IDS            if each process has a saved set
                                     user ID and a saved set group
                                     ID; otherwise, -1 is returned.
    _POSIX_VERSION    _SC_VERSION    The date of approval of the
                                     most current version of the
                                     POSIX-1 standard that the system
                                     supports. The date is a 6-digit
                                     number, with the first 4 digits
                                     signifying the year and the last
                                     2 digits the month.

                                     If_POSIX_VERSION is not defined,
                                     -1 is returned.

                                     Different versions of the POSIX-
                                     1 standard are periodically
                                     approved by the IEEE Standards
                                     Board, and the date of approval
                                     is used to distinguish between
                                     different versions.

    ISO POSIX-2

    BC_BASE_MAX       _SC_BC_BASE_   The maximum value allowed for
                      MAX            the obase variable with the bc
                                     command.
    BC_DIM_MAX        _SC_BC_DIM_    The maximum number of elements
                      MAX            permitted in an array by the bc
                                     command.
    BC_SCALE_MAX      _SC_BC_        The maximum value allowed for
                      SCALE_MAX      the scale variable with the bc
                                     command.
    BC_STRING_MAX     _SC_BC_        The maximum length of string
                      STRING_MAX     constants accepted by the bc
                                     command.
    COLL_WEIGHTS_MAX  _SC_COLL_      The maximum number of weights
                      WEIGHTS_MAX    that can be assigned to an
                                     entry in the LC_COLLATE locale-
                                     dependent information in a
                                     locale definition file.
    EXPR_NEST_MAX     _SC_EXPR_      The maximum number of
                      NEST_MAX       expressions that you can nest
                                     within parentheses by the expr
                                     command.
    LINE_MAX          _SC_LINE_MAX   The maximum length, in bytes,
                                     of a command input line (either
                                     standard input or another file)
                                     when the utility is described
                                     as processing text files. The
                                     length includes room for the
                                     trailing new-line character.
    RE_DUP_MAX        _SC_RE_DUP_    The maximum number of repeated
                      MAX            occurrences of a regular
                                     expression permitted when using
                                     the interval notation arguments,
                                     such as the m and n arguments
                                     with the ed command.
    _POSIX2_CHAR_     _SC_2_CHAR_    This variable has a value of 1
    TERM              TERM           if the system supports at least
                                     one terminal type; otherwise, -1
                                     is returned.
    _POSIX2_C_BIND    _SC_2_C_BIND   This variable has a value of
                                     1 if the system supports the
                                     C language binding option;
                                     otherwise, -1 is returned.
    _POSIX2_C_DEV     _SC_2_C_DEV    This variable has a value of
                                     1 if the system supports the
                                     optional C Language Development
                                     Utilities from the ISO POSIX-
                                     2 standard; otherwise, -1 is
                                     returned.
    _POSIX2_C_        _SC_2_C_       Integer value indicating the
    VERSION           VERSION        version of the ISO POSIX-2
                                     standard (C language binding).
                                     It changes with each new version
                                     of the ISO POSIX-2 standard.
    _POSIX2_VERSION   _SC_2_         Integer value indicating the
                      VERSION        version of the ISO POSIX-2
                                     standard (Commands). It changes
                                     with each new version of the ISO
                                     POSIX-2 standard.
    _POSIX2_FORT_DEV  _SC_2_FORT_    The variable has a value of 1 if
                      DEV            the system supports the Fortran
                                     Development Utilities Option
                                     from the ISO POSIX-2 standard;
                                     otherwise, -1 is returned.
    _POSIX2_FORT_RUN  _SC_2_FORT_    The variable has a value of
                      RUN            1 if the system supports the
                                     Fortran Runtime Utilities Option
                                     from the ISO POSIX-2 standard;
                                     otherwise, -1 is returned.
    _POSIX2_          _SC_2_         The variable has a value of
    LOCALEDEF         LOCALEDEF      1 if the system supports the
                                     creation of new locales with the
                                     localedef command; otherwise, -1
                                     is returned.
    _POSIX2_SW_DEV    _SC_2_SW_DEV   The variable has a value of 1 if
                                     the system supports the Software
                                     Development Utilities Option
                                     from the ISO POSIX-2 standard;
                                     otherwise, -1 is returned.
    _POSIX2_UPE       _SC_2_UPE      The variable has a value of 1
                                     if the system supports the User
                                     Portability Utilities Option;
                                     otherwise, -1 is returned.

    POSIX 1003.1c-1995

    _POSIX_THREADS    _SC_THREADS    This variable has a value of 1
                                     if the system supports POSIX
                                     threads; otherwise, -1 is
                                     returned.
    _POSIX_THREAD_    _SC_THREAD_    This variable has a value of 1
    ATTR_STACKSIZE    ATTR_          if the system supports the POSIX
                      STACKSIZE      threads stack size attribute;
                                     otherwise, -1 is returned.
    _POSIX_THREAD_    _SC_THREAD_    The 1003.1c implementation
    PRIORITY_         PRIORITY_      supports the realtime scheduling
    SCHEDULING        SCHEDULING     functions.
    _POSIX_THREAD_    _SC_THREAD_    TRUE if the implementation
    SAFE_FUNCTIONS    SAFE_          supports the thread-safe ANSI
                      FUNCTIONS      C functions in POSIX 1003.1c.
    PTHREAD_          _SC_THREAD_    When a thread terminates,
    DESTRUCTOR_       DESTRUCTOR_    DECthreads iterates through
    ITERATIONS        ITERATIONS     all non-NULL thread-specific
                                     data values in the thread, and
                                     calls a registered destructor
                                     routine (if any) for each. It
                                     is possible for a destructor
                                     routine to create new values for
                                     one or more thread-specific data
                                     keys. In that case, DECthreads
                                     goes through the entire process
                                     again.

                                     _SC_THREAD_DESTRUCTOR_ITERATIONS
                                     is the maximum number of times
                                     the implementation loops before
                                     it terminates the thread even if
                                     there are still non-NULL values.
    PTHREAD_KEYS_MAX  _SC_THREAD_    The maximum number of thread-
                      KEYS_MAX       specific data keys that an
                                     application can create.
    PTHREAD_STACK_    _SC_THREAD_    The minimum allowed size of a
    MIN               STACK_MIN      stack for a new thread. Any
                                     lower value specified for the
                                     "stacksize" thread attribute is
                                     rounded up.
    UINT_MAX          _SC_THREAD_    The maximum number of threads
                      THREADS_MAX    an application is allowed to
                                     create. Since DECthreads does
                                     not enforce any fixed limit,
                                     this value is -1.

    X/Open

    _XOPEN_VERSION    _SC_XOPEN_     An integer indicating the
                      VERSION        most current version of the
                                     X/Open standard that the system
                                     supports.
    PASS_MAX          _SC_PASS_MAX   Maximum number of significant
                                     bytes in a password (not
                                     including terminating null).
    XOPEN_CRYPT       _SC_XOPEN_     This variable has a value of
                      CRYPT          1 if the system supports the
                                     X/Open Encryption Feature Group;
                                     otherwise, -1 is returned.
    XOPEN_ENH_I18N    _SC_XOPEN_     This variable has a value
                      ENH_I18N       of 1 if the system supports
                                     the X/Open enhanced
                                     Internationalization Feature
                                     Group; otherwise, -1 is
                                     returned.
    XOPEN_SHM         _SC_XOPEN_     This variable has a value
                      SHM            of 1 if the system supports
                                     the X/Open Shared Memory
                                     Feature Group; otherwise, -1
                                     is returned.

    X/Open Extended

    ATEXIT_MAX        _SC_ATEXIT_    The maximum number of functions
                      MAX            that you can register with
                                     atexit per process.
    PAGESIZE          _SC_PAGESIZE   Size, in bytes, of a page.
    PAGE_SIZE         _SC_PAGE_      Same as PAGESIZE. If either
                      SIZE           PAGESIZE or PAGE_SIZE is
                                     defined, the other is defined
                                     with the same value.
    IOV_MAX           _SC_IOV_MAX    Maximum number of iovec
                                     structures that one process
                                     has available for use with readv
                                     or writev.
    XOPEN_UNIX        _SC_XOPEN_     This variable has a value of
                      UNIX           1 if the system supports the
                                     X/Open CAE Specification, August
                                     1994, System Interfaces and
                                     Headers, Issue 4, Version 2,
                                     (ISBN: 1-85912-037-7, C435);
                                     otherwise, -1 is returned.

    Other

    N/A               _SC_CPU_       Returns information for
                      CHIP_TYPE      the processor type. See the
                                     description after this table.

    For the _SC_CPU_CHIP_TYPE symbolic constant:

    o  On Alpha servers, sysconf returns the architecture type (2),
       as given by the $GETSYI system service.

    o  Integrity processor information is stored in CPUID register
       3. This register contains a 64-bit integer divided into 1-byte
       fields indicating version information related to the processor
       implementation. The sysconf function returns the low-order
       longword with the following information:

       31     24 23    16 15    8 7     0
       ----------------------------------
       | family | model  | rev   |number|
       ----------------------------------

    These fields are described in the following table:

    Field  Bits   Description

    number 7:0    Index of the largest implemented CPUID register
                  (one less than the number of implemented CPUID
                  registers). This value will be at least 4.
    rev    15:8   Processor revision number. An 8-bit value that
                  represents the revision or stepping of this
                  processor implementation within the processor
                  model.
    model  23:16  Processor model number. A unique 8-bit value
                  representing the processor model within the
                  processor family.
    family 31:24  Processor family number. A unique 8-bit value
                  representing the processor family.
Close Help