sysconf(3c) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

sysconf(3c)

Standard C Library Functions                                       sysconf(3C)



NAME
       sysconf - get configurable system variables

SYNOPSIS
       #include <unistd.h>

       long sysconf(int name);

DESCRIPTION
       The  sysconf()  function provides a method for an application to deter‐
       mine the current value of a configurable system limit or option  (vari‐
       able).


       The  name  argument  represents  the system variable to be queried. The
       following table lists the minimal set of system  variables  from  <lim‐
       its.h>  and  <unistd.h>  that can be returned by sysconf() and the sym‐
       bolic constants defined in <unistd.h> that are the corresponding values
       used for name on the SPARC and x86 platforms.

             Name                   Return Value               Meaning
         _______________________________________________________________________
         _SC_2_C_BIND            _POSIX2_C_BIND             Supports the C lang-
                                                            uage binding option
         _SC_2_C_DEV             _POSIX2_C_DEV              Supports the C lang-
                                                            uage development
                                                            utilities option
         _SC_2_C_VERSION         _POSIX2_C_VERSION          Integer value
                                                            indicates version
                                                            of ISO POSIX-2
                                                            standard (Commands)
         _SC_2_CHAR_TERM         _POSIX2_CHAR_TERM          Supports at least
                                                            one terminal
         _SC_2_FORT_DEV          _POSIX2_FORT_DEV           Supports FORTRAN
                                                            Development
                                                            Utilities Option
         _SC_2_FORT_RUN          _POSIX2_FORT_RUN           Supports FORTRAN
                                                            Runtime Utilities
                                                            Option
         _SC_2_LOCALEDEF         _POSIX2_LOCALEDEF          Supports creation
                                                            of locales by the
                                                            localedef utility
         _SC_2_SW_DEV            _POSIX2_SW_DEV             Supports Software
                                                            Development Utility
                                                            Option
         _SC_2_UPE               _POSIX2_UPE                Supports User
                                                            Portability
                                                            Utilities Option
         _SC_2_VERSION           _POSIX2_VERSION            Integer value
                                                            indicates version
                                                            of ISO POSIX-2
                                                            standard (C language
                                                            binding)
         _SC_ADI_METADATA_MAX                               Returns maximum amount
                                                            of metadata in bytes
                                                           used by each ADI page.
                                                           which may be written to
                                                            backing store.
         _SC_AIO_LISTIO_MAX      AIO_LISTIO_MAX             Max number of I/O
                                                            operations in a
                                                            single list I/O call
                                                            supported
         _SC_AIO_MAX             AIO_MAX                    Max number of
                                                            outstanding
                                                            asynchronous I/O
                                                            operations supported
         _SC_AIO_PRIO_DELTA_MAX  AIO_PRIO_DELTA_MAX         Max amount by which
                                                            process can decrease
                                                            its asynchronous
                                                            I/O priority level
                                                            from its own
                                                            scheduling priority
         _SC_ARG_MAX             ARG_MAX                    Max size of argv[]
                                                            plus envp[]
         _SC_ASYNCHRONOUS_IO     _POSIX_ASYNCHRONOUS_IO     Supports
                                                            Asynchronous I/O
         _SC_ATEXIT_MAX          ATEXIT_MAX                 Max number of
                                                            functions that can
                                                            be registered with
                                                            atexit()
         _SC_AVPHYS_PAGES                                   Number of physical
                                                            memory pages not
                                                            currently in use by
                                                            system
         _SC_BARRIERS            _POSIX_BARRIERS            Supports Barriers
                                                            option
         _SC_BC_BASE_MAX         BC_BASE_MAX                Maximum obase values
                                                            allowed by bc
         _SC_BC_DIM_MAX          BC_DIM_MAX                 Max number of
                                                            elements permitted
                                                            in array by bc
         _SC_BC_SCALE_MAX        BC_SCALE_MAX               Max scale value
                                                            allowed by bc
         _SC_BC_STRING_MAX       BC_STRING_MAX              Max length of string
                                                            constant allowed by
                                                            bc
         _SC_CHILD_MAX           CHILD_MAX                  Max processes
                                                            allowed to a UID
         _SC_CLK_TCK             CLK_TCK                    Ticks per second
                                                            (clock_t)
         _SC_CLOCK_SELECTION     _POSIX_CLOCK_SELECTION     Supports Clock
                                                            Selection option
         _SC_COLL_WEIGHTS_MAX    COLL_WEIGHTS_MAX           Max number of
                                                            weights that can be
                                                            assigned to entry of
                                                            the LC_COLLATE order
                                                            keyword in locale
                                                            definition file
         _SC_CPUID_MAX                                      Max possible
                                                            processor ID
         _SC_CPUID_SEQ_MAX                                  Max processor ID allocated
                                                            since boot
         _SC_DELAYTIMER_MAX      DELAYTIMER_MAX             Max number of timer
                                                            expiration overruns
         _SC_EXPR_NEST_MAX       EXPR_NEST_MAX              Max number of
                                                            parentheses by expr
         _SC_FSYNC               _POSIX_FSYNC               Supports File
                                                            Synchronization
         _SC_GETGR_R_SIZE_MAX                               Max size of group
                                                            entry buffer
         _SC_GETPW_R_SIZE_MAX                               Max size of password
                                                            entry buffer
         _SC_HOST_NAME_MAX       _POSIX_HOST_NAME_MAX       Maximum length of a
                                                            host name (excluding
                                                            terminating null)
         _SC_IOV_MAX             IOV_MAX                    Max number of iovec
                                                            structures available
                                                            to one process for
                                                            use with readv()
                                                            and writev()
         _SC_JOB_CONTROL         _POSIX_JOB_CONTROL         Job control
                                                            supported?
         _SC_LINE_MAX            LINE_MAX                   Max length of input
                                                            line
         _SC_LOGIN_NAME_MAX      LOGNAME_MAX + 1            Max length of login
                                                            name
         _SC_LOGNAME_MAX         LOGNAME_MAX
         _SC_MAPPED_FILES        _POSIX_MAPPED_FILES        Supports Memory
                                                            Mapped Files
         _SC_MAXPID                                         Max pid value
         _SC_MEMLOCK             _POSIX_MEMLOCK             Supports Process
                                                            Memory Locking
         _SC_MEMLOCK_RANGE       _POSIX_MEMLOCK_RANGE       Supports Range
                                                            Memory Locking
         _SC_MEMORY_PROTECTION   _POSIX_MEMORY_PROTECTION   Supports Memory
                                                            Protection
         _SC_MESSAGE_PASSING     _POSIX_MESSAGE_PASSING     Supports Message
                                                            Passing
         _SC_MONOTONIC_CLOCK     _POSIX_MONOTONIC_CLOCK     Supports Monotonic
                                                            Clock option
         _SC_MQ_OPEN_MAX         MQ_OPEN_MAX                Max number of open
                                                            message queues a
                                                            process can hold
         _SC_MQ_PRIO_MAX         MQ_PRIO_MAX                Max number of
                                                            message priorities
                                                            supported
         _SC_NGROUPS_MAX         NGROUPS_MAX                Max simultaneous
                                                            groups to which
                                                            one can belong
         _SC_NPROCESSORS_CONF                               Number of processors
                                                            configured
         _SC_NPROCESSORS_MAX                                Max number of
                                                            processors supported
                                                            by platform
         _SC_NPROCESSORS_ONLN                               Number of processors
                                                            online
         _SC_OPEN_MAX            OPEN_MAX                   Max open files per
                                                            process
         _SC_OSM_PAGESIZE_MIN                               Minimum granule
                                                            size supported
                                                            for use with
                                                            shmget_osm(2)
         _SC_OSM_VERSION                                    shmget_osm(2)
                                                            version. A value greater than
                                                            or equal to 2 indicates efficient
                                                            support of mixed
                                                            read-only and
                                                            read-write shmat()s
         _SC_PAGESIZE            PAGESIZE                   System memory page
                                                            size
         _SC_PAGE_SIZE           PAGESIZE                   Same as _SC_PAGESIZE
         _SC_PASS_MAX            PASS_MAX                   Max number of
                                                            significant bytes
                                                            in a password
         _SC_PHYS_PAGES                                     Total number of
                                                            pages of physical
                                                            memory in system
         _SC_PRIORITIZED_IO      _POSIX_PRIORITIZED_IO      Supports Prioritized
                                                            I/O
         _SC_PRIORITY_SCHEDULING _POSIX_PRIORITY_SCHEDULING Supports Process
                                                            Scheduling
         _SC_RAW_SOCKETS         _POSIX_RAW_SOCKETS         Supports Raw Sockets
                                                            option
         _SC_RCTL_VAL_MAX_NUM                               Max number of rctl
                                                            (resource control)
                                                            values per an rctl
                                                            determined by a pair
                                                            of rctl name and
                                                            entity. See
                                                            setrctl(2) for
                                                            details.
         _SC_RE_DUP_MAX          RE_DUP_MAX                 Max number of
                                                            repeated occurrences
                                                            of a regular
                                                            expression permitted
                                                            when using interval
                                                            notation \{m,n\}
         _SC_READER_WRITER_LOCKS _POSIX_READER_WRITER_LOCKS Supports IPV6 option
         _SC_REALTIME_SIGNALS    _POSIX_REALTIME_SIGNALS    Supports Realtime
                                                            Signals
         _SC_REGEXP              _POSIX_REGEXP              Supports Regular
                                                            Expression Handling
                                                            option
         _SC_RTSIG_MAX           RTSIG_MAX                  Max number of
                                                            realtime signals
                                                            reserved for
                                                            application use
         _SC_SAVED_IDS           _POSIX_SAVED_IDS           Saved IDs
                                                            (seteuid())
                                                            supported?
         _SC_SEM_NSEMS_MAX       SEM_NSEMS_MAX              Max number of POSIX
                                                            semaphores a process
                                                            can have
         _SC_SEM_VALUE_MAX       SEM_VALUE_MAX              Max value a POSIX
                                                            semaphore can have
         _SC_SEMAPHORES          _POSIX_SEMAPHORES          Supports Semaphores
         _SC_SHARED_MEMORY_      _POSIX_SHARED_MEMORY_      Supports Shared
            OBJECTS                 OBJECTS                 Memory Objects
         _SC_SHELL               _POSIX_SHELL               Supports POSIX shell
         _SC_SIGQUEUE_MAX        _SIGQ_MAX                  Max number of queued
                                                            signals that a
                                                            process can send and
                                                            have pending at
                                                            receiver(s) at a
                                                            time
         _SC_SPAWN               _POSIX_SPAWN               Supports Spawn option
         _SC_SPIN_LOCKS          _POSIX_SPIN_LOCKS          Supports Spin Locks
                                                            option
         _SC_STACK_PROT                                     Default stack
                                                            protection
         _SC_STREAM_MAX          STREAM_MAX                 Number of streams
                                                            one process can
                                                            have open at a time
         _SC_SYMLOOP_MAX         _POSIX_SYMLOOP_MAX         Max number of symbolic
                                                            links that can be
                                                            reliably traversed in
                                                            the resolution of a
                                                            pathname in the absence
                                                            of a loop
         _SC_SYNCHRONIZED_IO     _POSIX_SYNCHRONIZED_IO     Supports
                                                            Synchronized I/O
         _SC_THREAD_ATTR_        _POSIX_THREAD_ATTR_        Supports Thread
            STACKADDR               STACKADDR               Stack Address
                                                            Attribute option
         _SC_THREAD_ATTR_        _POSIX_THREAD_ATTR_        Supports Thread
            STACKSIZE               STACKSIZE               Stack Size
                                                            Attribute option
         _SC_THREAD_DESTRUCTOR_  PTHREAD_DESTRUCTOR_        Number attempts made
            ITERATIONS              ITERATIONS              to destroy thread-
                                                            specific data on
                                                            thread exit
         _SC_THREAD_KEYS_MAX     PTHREAD_KEYS_MAX           Max number of data
                                                            keys per process
         _SC_THREAD_PRIO_        _POSIX_THREAD_PRIO_        Supports Priority
            INHERIT                 INHERIT                 Inheritance option
         _SC_THREAD_PRIO_        _POSIX_THREAD_PRIO_        Supports Priority
            PROTECT                 PROTECT                 Protection option
         _SC_THREAD_PRIORITY_    _POSIX_THREAD_PRIORITY_    Supports Thread
            SCHEDULING              SCHEDULING              Execution
                                                            Scheduling option
         _SC_THREAD_PROCESS_     _POSIX_THREAD_PROCESS_     Supports
            SHARED                  SHARED                  Process-Shared
                                                            Synchronization
                                                            option
         _SC_THREAD_SAFE_        _POSIX_THREAD_SAFE_        Supports Thread-Safe
            FUNCTIONS               FUNCTIONS               Functions option
         _SC_THREAD_STACK_MIN    PTHREAD_STACK_MIN          Min byte size of
                                                            thread stack storage
         _SC_THREAD_THREADS_MAX  PTHREAD_THREADS_MAX        Max number of
                                                            threads per process
         _SC_THREADS             _POSIX_THREADS             Supports Threads
                                                            option
         _SC_TIMEOUTS            _POSIX_TIMEOUTS            Supports Timeouts
                                                            option
         _SC_TIMER_MAX           TIMER_MAX                  Max number of timer
                                                            per process
                                                            supported
         _SC_TIMERS              _POSIX_TIMERS              Supports Timers
         _SC_TTY_NAME_MAX        TTYNAME_MAX                Max length of tty
                                                            device name
         _SC_TZNAME_MAX          TZNAME_MAX                 Max number of bytes
                                                            supported for name
                                                            of a time zone
         _SC_V6_ILP32_OFF32      _POSIX_V6_ILP32_OFF32      Supports  X/Open
                                                            ILP32 w/32-bit
                                                            offset build
                                                            environment
         _SC_V6_ILP32_OFFBIG     _POSIX_V6_ILP32_OFFBIG     Supports  X/Open
                                                            ILP32 w/64-bit
                                                            offset build
                                                            environment
         _SC_V6_LP64_OFF64       _POSIX_V6_LP64_OFF64       Supports  X/Open
                                                            LP64 w/64-bit
                                                            offset build
                                                            environment
         _SC_V6_LPBIG_OFFBIG     _POSIX_V6_LPBIG_OFFBIG     Same as
                                                            _SC_V6_LP64_OFF64
         _SC_VERSION             _POSIX_VERSION             POSIX.1 version
                                                            supported
         _SC_XBS5_ILP32_OFF32    _XBS_ILP32_OFF32           Indicates support
                                                            for X/Open ILP32
                                                            w/32-bit offset
                                                            build environment
         _SC_XBS5_ILP32_OFFBIG   _XBS5_ILP32_OFFBIG         Indicates support
                                                            for X/Open ILP32
                                                            w/64-bit offset
                                                            build environment
         _SC_XBS5_LP64_OFF64     _XBS5_LP64_OFF64           Indicates support of
                                                            X/Open LP64,
                                                            64-bit offset
                                                            build environment
         _SC_XBS5_LPBIG_OFFBIG   _XBS5_LP64_OFF64           Same as
                                                            _SC_XBS5_LP64_OFF64
         _SC_XOPEN_CRYPT         _XOPEN_CRYPT               Supports X/Open
                                                            Encryption Feature
                                                            Group
         _SC_XOPEN_ENH_I18N      _XOPEN_ENH_I18N            Supports X/Open
                                                            Enhanced
                                                            Internationalization
                                                            Feature Group
         _SC_XOPEN_LEGACY        _XOPEN_LEGACY              Supports X/Open
                                                            Legacy Feature Group
         _SC_XOPEN_REALTIME      _XOPEN_REALTIME            Supports X/Open
                                                            POSIX Realtime
                                                            Feature Group
         _SC_XOPEN_REALTIME_     _XOPEN_REALTIME_THREADS    Supports X/Open
              THREADS                                       POSIX Realtime
                                                            Threads Feature
                                                            Group
         _SC_XOPEN_SHM           _XOPEN_SHM                 Supports X/Open
                                                            Shared Memory
                                                            Feature Group
         _SC_XOPEN_STREAMS       _POSIX_XOPEN_STREAMS       Supports XSI Streams
                                                            option group
         _SC_XOPEN_UNIX          _XOPEN_UNIX                Supports X/Open CAE
                                                            Specification,
                                                            August 1994, System
                                                            Interfaces and
                                                            Headers, Issue 4,
                                                            Version 2
         _SC_XOPEN_VERSION       _XOPEN_VERSION             Integer value
                                                            indicates version of
                                                            X/Open Portability
                                                            Guide to which
                                                            implementation
                                                            conforms
         _SC_XOPEN_XCU_VERSION   _XOPEN_XCU_VERSION         Integer value
                                                            indicates version of
                                                            XCU specification to
                                                            which implementation
                                                            conforms
         _SC_THREAD_ROBUST_  _POSIX_THREAD_ROBUST_      The implementation supports
         PRIO_INHERIT            PRIO_INHERIT               the Robust Mutex Priority Inheritance option.

         _SC_THREAD_ROBUST_  _POSIX_THREAD_ROBUST_      The implementation supports
         PRIO_PROTECT            PRIO_PROTECT               the Robust Mutex Priority Protection option.

         _SC_V7_ILP32_      _POSIX_V7_ILP32_            Supports X/Open ILP32 w/32-bit offset
         OFF32                   OFF32                      build environment.

         _SC_V7_ILP32_       _POSIX_V7_ILP32_           Supports X/Open ILP32 w/64-bit offset
         OFFBIG                  OFFBIG                     build environment.

         _SC_V7_LP64_         _POSIX_V7_LP64_            Supports X/Open LP64 w/64-bit offset
         OFF64                   OFF64                       build environment.

         _SC_V7_LPBIG_       _POSIX_V7_LPBIG_           Supports X/Open LPBIG w/64-bit offset
         OFFBIG                  OFFBIG                     build environment.

         _SC_XOPEN_UUCP          _XOPEN_UUCP                The system supports the UUCP
                                                            utilities option.



       The following options are supported:


       _SC_DCACHE_ASSOC       Associativity of cpu's data cache


       _SC_DCACHE_LINESZ      Cacheline size of cpu's data cache in bytes


       _SC_DCACHE_SZ          Data cache size of cpu in bytes


       _SC_ICACHE_ASSOC       Associativity of cpu's instruction cache


       _SC_ICACHE_LINESZ      Cacheline  size  of  cpu's  instruction cache in
                              bytes.


       _SC_ICACHE_SZ          Instruction cache size of the cpu in bytes


       _SC_L2CACHE_SZ         L2 cache size of cpu in bytes


       _SC_L2CACHE_LINESZ     L2 cacheline size of cpu in bytes


       _SC_L2CACHE_ASSOC      L2 cache associativity of cpu


       _SC_L3CACHE_SZ         L3 cache size of cpu in bytes


       _SC_L3CACHE_LINESZ     L3 cacheline size of cpus in bytes


       _SC_L3CACHE_ASSOC      L3 cache associativity of cpu


       _SC_MAX_CONCURRENCY    Total number of cpus available for the  applica‐
                              tion




       The following options are not supported and return −1:


       tab();   lw(2.75i)  lw(2.75i)  _SC_2_PBS_POSIX2_PBS  _SC_2_PBS_ACCOUNT‐
       ING_POSIX2_PBS_ACCOUNTING    _SC_2_PBS_CHECKPOINT_POSIX2_PBS_CHECKPOINT
       _SC_2_PBS_LOCATE_POSIX2_PBS_LOCATE _SC_2_PBS_MESSAGE_POSIX2_PBS_MESSAGE
       _SC_2_PBS_TRACK_POSIX2_PBS_TRACK  _SC_ADVISORY_INFO_POSIX_ADVISORY_INFO
       _SC_CPUTIME_POSIX_CPUTIME     _SC_SPORADIC_SERVER_POSIX_SPORADIC_SERVER
       _SC_SS_REPL_MAX_POSIX_SS_REPL_MAX
       _SC_THREAD_CPUTIME_POSIX_THREAD_CPUTIME                 _SC_THREAD_SPO‐
       RADIC_SERVER_POSIX_THREAD_SPORADIC_SERVER         _SC_TRACE_POSIX_TRACE
       _SC_TRACE_EVENT_FILTER_POSIX_TRACE_EVENT_FILTER
       _SC_TRACE_EVENT_NAME_MAX_POSIX_TRACE_EVENT_NAME_MAX
       _SC_TRACE_INHERIT_POSIX_TRACE_INHERIT     _SC_TRACE_LOG_POSIX_TRACE_LOG
       _SC_TRACE_NAME_MAX_POSIX_TRACE_NAME_MAX
       _SC_TRACE_SYS_MAX_POSIX_TRACE_SYS_MAX
       _SC_TRACE_USER_EVENT_MAX_POSIX_TRACE_USER_EVENT_MAX      _SC_TYPED_MEM‐
       ORY_OBJECTS_POSIX_TYPED_MEMORY_OBJECTS


RETURN VALUES
       Upon  successful  completion,  sysconf()  returns  the current variable
       value on the system. The value returned will not  be  more  restrictive
       than  the  corresponding value described to the application when it was
       compiled with the implementation's <limits.h>, <unistd.h> or  <time.h>.
       With   only   a   few  obvious  exceptions  such  as  _SC_AVPHYS_PAGES,
       _SC_CPUID_SEQ_MAX and _SC_NPROCESSORS_ONLN, the value will  not  change
       during the lifetime of the calling process.


       If  name  is  an  invalid value, sysconf() returns −1 and sets errno to
       indicate the error. If the variable corresponding to name is associated
       with  functionality  that  is  not  supported  by the system, sysconf()
       returns −1 without changing the value of errno.


       Calling sysconf() with the following returns −1 without setting  errno,
       because  no  maximum  limit  can  be determined. The system supports at
       least the minimum values and can support higher values  depending  upon
       system resources.

         Variable                            Minimum supported value
         _SC_AIO_MAX                        _POSIX_AIO_MAX
         _SC_ATEXIT_MAX                     32
         _SC_MQ_OPEN_MAX                    32
         _SC_THREAD_THREADS_MAX             _POSIX_THREAD_THREADS_MAX
         _SC_THREAD_KEYS_MAX                _POSIX_THREAD_KEYS_MAX
         _SC_THREAD_DESTRUCTOR_ITERATIONS   _POSIX_THREAD_DESTRUCTOR_ITERATIONS



       The following SPARC and x86 platform variables return EINVAL:


         _SC_COHER_BLKSZ        _SC_DCACHE_BLKSZ
         _SC_DCACHE_TBLKSZ      _SC_ICACHE_BLKSZ
         _SC_SPLIT_CACHE


ERRORS
       The sysconf() function will fail if:

       EINVAL    The value of the name argument is invalid.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ ArchitectureSPARC and x86 _ Interface  StabilityCommit‐
       ted _ MT-LevelMT-Safe, Async-Signal-Safe _ StandardSee standards(7).


SEE ALSO
       getconf(1), fpathconf(2), seteuid(2), setrlimit(2), shmget_osm(2), con‐
       fstr(3C), attributes(7), standards(7), pooladm(8), zoneadm(8)

NOTES
       A call to setrlimit() can cause the value of OPEN_MAX to change.


       Multiplying  sysconf(_SC_PHYS_PAGES)  or  sysconf(_SC_AVPHYS_PAGES)  by
       sysconf(_SC_PAGESIZE)  to  determine  memory amount in bytes can exceed
       the maximum values representable in a 32-bit signed or  unsigned  inte‐
       ger.


       The  value of CLK_TCK can be variable and it should not be assumed that
       CLK_TCK is a compile-time constant.


       If the caller is in a non-global zone and the pools facility is active,
       sysconf(_SC_NPROCESSORS_CONF)  and sysconf(_SC_NPROCESSORS_ONLN) return
       the number of processors in the processor set of the pool to which  the
       zone is bound.


       The  sysconf() (_SC_ADI_METADATA_MAX) returns zero if the platform does
       not support ADI, or if the implementation  does  not  require  metadata
       when writing pages to the backing store.



Oracle Solaris 11.4               11 May 2021                      sysconf(3C)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3