Provided by: manpages_3.35-0.1ubuntu1_all bug

NAME

       posixoptions - optional parts of the POSIX standard

DESCRIPTION

       The  POSIX  standard  (the  information  below  is  from  POSIX.1-2001) describes a set of
       behaviors and interfaces for a compliant system.  However, many  interfaces  are  optional
       and  there are feature test macros to test the availability of interfaces at compile time,
       and functions sysconf(3), fpathconf(3), pathconf(3), confstr(3) to do this  at  run  time.
       From shell scripts one can use getconf(1).  For more detail, see sysconf(3).

       We  give  the  name  of  the  POSIX  abbreviation,  the option, the name of the sysconf(3)
       parameter used to inquire about the option, and possibly a very short  description.   Much
       more  precise  detail  can  be  found  in the POSIX standard itself, versions of which can
       nowadays be accessed freely on the web.

   ADV - _POSIX_ADVISORY_INFO - _SC_ADVISORY_INFO
       The following advisory functions are present:

           posix_fadvise(),
           posix_fallocate(),
           posix_memalign(),
           posix_madvise().

   AIO - _POSIX_ASYNCHRONOUS_IO - _SC_ASYNCHRONOUS_IO
       The header <aio.h> is present.  The following functions are present:

           aio_cancel(),
           aio_error(),
           aio_fsync(),
           aio_read(),
           aio_return(),
           aio_suspend(),
           aio_write(),
           lio_listio().

   BAR - _POSIX_BARRIERS - _SC_BARRIERS
       This option implies the  _POSIX_THREADS  and  _POSIX_THREAD_SAFE_FUNCTIONS  options.   The
       following functions are present:

           pthread_barrier_destroy(),
           pthread_barrier_init(),
           pthread_barrier_wait(),
           pthread_barrierattr_destroy(),
           pthread_barrierattr_init().

   --- - POSIX_CHOWN_RESTRICTED
       If this option is in effect (as it always is under POSIX.1-2001) then only root may change
       the owner of a file, and nonroot can only set the group of a file to one of the groups  it
       belongs to.  This affects the functions chown(), fchown().

   CS - _POSIX_CLOCK_SELECTION - _SC_CLOCK_SELECTION
       This option implies the _POSIX_TIMERS option.  The following functions are present:

           pthread_condattr_getclock(),
           pthread_condattr_setclock(),
           clock_nanosleep().

       If CLOCK_REALTIME is changed by the function clock_settime(), then this affects all timers
       set for an absolute time.

   CPT - _POSIX_CPUTIME - _SC_CPUTIME
       The clockID CLOCK_PROCESS_CPUTIME_ID is supported.  The initial value of this clock  is  0
       for   each   process.   This  option  implies  the  _POSIX_TIMERS  option.   The  function
       clock_getcpuclockid() is present.

   --- - _POSIX_FILE_LOCKING - _SC_FILE_LOCKING
       This option has been deleted.  Not in final XPG6.

   FSC - _POSIX_FSYNC - _SC_FSYNC
       The function fsync() is present.

   IP6 - _POSIX_IPV6 - _SC_IPV6
       Internet Protocol Version 6 is supported.

   --- - _POSIX_JOB_CONTROL - _SC_JOB_CONTROL
       If this option is in  effect  (as  it  always  is  under  POSIX.1-2001)  then  the  system
       implements POSIX-style job control, and the following functions are present:

           setpgid(),
           tcdrain(),
           tcflush(),
           tcgetpgrp(),
           tcsendbreak(),
           tcsetattr(),
           tcsetpgrp().

   MF - _POSIX_MAPPED_FILES - _SC_MAPPED_FILES
       Shared  memory  is  supported.   The  include file <sys/mman.h> is present.  The following
       functions are present: mmap(), msync(), munmap().

   ML - _POSIX_MEMLOCK - _SC_MEMLOCK
       Shared memory can be  locked  into  core.   The  functions  mlockall(),  munlockall()  are
       present.

   MR/MLR - _POSIX_MEMLOCK_RANGE - _SC_MEMLOCK_RANGE
       More  precisely,  ranges  can  be  locked into core.  The functions mlock(), munlock() are
       present.

   MPR - _POSIX_MEMORY_PROTECTION - _SC_MEMORY_PROTECTION
       The function mprotect() is present.

   MSG - _POSIX_MESSAGE_PASSING - _SC_MESSAGE_PASSING
       The include file <mqueue.h> is present.  The following functions are present:

           mq_close(),
           mq_getattr(),
           mq_notify(),
           mq_open(),
           mq_receive(),
           mq_send(),
           mq_setattr(),
           mq_unlink().

   MON - _POSIX_MONOTONIC_CLOCK - _SC_MONOTONIC_CLOCK
       CLOCK_MONOTONIC is supported.  This option implies  the  _POSIX_TIMERS  option.   Affected
       functions are

           aio_suspend(),
           clock_getres(),
           clock_gettime(),
           clock_settime(),
           timer_create().

   --- - _POSIX_MULTI_PROCESS - _SC_MULTI_PROCESS
       This option has been deleted.  Not in final XPG6.

   --- - _POSIX_NO_TRUNC
       If  this option is in effect (as it always is under POSIX.1-2001) then pathname components
       longer than NAME_MAX are not truncated, but give an error.  This property may be dependent
       on the path prefix of the component.

   PIO - _POSIX_PRIORITIZED_IO - _SC_PRIORITIZED_IO
       This  option  says that one can specify priorities for asynchronous I/O.  This affects the
       functions

           aio_read(),
           aio_write().

   PS - _POSIX_PRIORITY_SCHEDULING - _SC_PRIORITY_SCHEDULING
       The include file <sched.h> is present.  The following functions are present:

           sched_get_priority_max(),
           sched_get_priority_min(),
           sched_getparam(),
           sched_getscheduler(),
           sched_rr_get_interval(),
           sched_setparam(),
           sched_setscheduler(),
           sched_yield().

       If also _POSIX_SPAWN is in effect, then the following functions are present:

           posix_spawnattr_getschedparam(),
           posix_spawnattr_getschedpolicy(),
           posix_spawnattr_setschedparam(),
           posix_spawnattr_setschedpolicy().

   RS - _POSIX_RAW_SOCKETS
       Raw sockets are supported.  Affected functions are getsockopt(), setsockopt().

   --- - _POSIX_READER_WRITER_LOCKS - _SC_READER_WRITER_LOCKS
       This option  implies  the  _POSIX_THREADS  option.   Conversely,  under  POSIX.1-2001  the
       _POSIX_THREADS option implies this option.
       The following functions are present:

           pthread_rwlock_destroy(),
           pthread_rwlock_init(),
           pthread_rwlock_rdlock(),
           pthread_rwlock_tryrdlock(),
           pthread_rwlock_trywrlock(),
           pthread_rwlock_unlock(),
           pthread_rwlock_wrlock(),
           pthread_rwlockattr_destroy(),
           pthread_rwlockattr_init().

   RTS - _POSIX_REALTIME_SIGNALS - _SC_REALTIME_SIGNALS
       Realtime signals are supported.  The following functions are present:

           sigqueue(),
           sigtimedwait(),
           sigwaitinfo().

   --- - _POSIX_REGEXP - _SC_REGEXP
       If  this  option  is  in  effect  (as  it always is under POSIX.1-2001) then POSIX regular
       expressions are supported and the following functions are present:

           regcomp(),
           regerror(),
           regexec(),
           regfree().

   --- - _POSIX_SAVED_IDS - _SC_SAVED_IDS
       If this option is in effect (as it always is under POSIX.1-2001)  then  a  process  has  a
       saved set-user-ID and a saved set-group-ID.  Affected functions are

           exec(),
           kill(),
           seteuid(),
           setegid(),
           setgid(),
           setuid().

   SEM - _POSIX_SEMAPHORES - _SC_SEMAPHORES
       The include file <semaphore.h> is present.  The following functions are present:

           sem_close(),
           sem_destroy(),
           sem_getvalue(),
           sem_init(),
           sem_open(),
           sem_post(),
           sem_trywait(),
           sem_unlink(),
           sem_wait().

   SHM - _POSIX_SHARED_MEMORY_OBJECTS - _SC_SHARED_MEMORY_OBJECTS
       The following functions are present:

           mmap(),
           munmap(),
           shm_open(),
           shm_unlink().

   --- - _POSIX_SHELL - _SC_SHELL
       If this option is in effect (as it always is under POSIX.1-2001), the function system() is
       present.

   SPN - _POSIX_SPAWN - _SC_SPAWN
       This option describes support for process creation in a context where it is  difficult  or
       impossible  to  use fork(), for example, because no MMU is present.  If _POSIX_SPAWN is in
       effect, then the include file <spawn.h> and the following functions are present:

           posix_spawn(),
           posix_spawn_file_actions_addclose(),
           posix_spawn_file_actions_adddup2(),
           posix_spawn_file_actions_addopen(),
           posix_spawn_file_actions_destroy(),
           posix_spawn_file_actions_init(),
           posix_spawnattr_destroy(),
           posix_spawnattr_getsigdefault(),
           posix_spawnattr_getflags(),
           posix_spawnattr_getpgroup(),
           posix_spawnattr_getsigmask(),
           posix_spawnattr_init(),
           posix_spawnattr_setsigdefault(),
           posix_spawnattr_setflags(),
           posix_spawnattr_setpgroup(),
           posix_spawnattr_setsigmask(),
           posix_spawnp().
       If also _POSIX_PRIORITY_SCHEDULING is in effect, then the following functions are present:

           posix_spawnattr_getschedparam(),
           posix_spawnattr_getschedpolicy(),
           posix_spawnattr_setschedparam(),
           posix_spawnattr_setschedpolicy().

   SPI - _POSIX_SPIN_LOCKS - _SC_SPIN_LOCKS
       This option implies the  _POSIX_THREADS  and  _POSIX_THREAD_SAFE_FUNCTIONS  options.   The
       following functions are present:

           pthread_spin_destroy(),
           pthread_spin_init(),
           pthread_spin_lock(),
           pthread_spin_trylock(),
           pthread_spin_unlock().

   SS - _POSIX_SPORADIC_SERVER - _SC_SPORADIC_SERVER
       The   scheduling   policy   SCHED_SPORADIC   is   supported.    This  option  implies  the
       _POSIX_PRIORITY_SCHEDULING option.  Affected functions are

           sched_setparam(),
           sched_setscheduler().

   SIO - _POSIX_SYNCHRONIZED_IO - _SC_SYNCHRONIZED_IO
       Affected functions are open(), msync(), fsync(), fdatasync().

   TSA - _POSIX_THREAD_ATTR_STACKADDR - _SC_THREAD_ATTR_STACKADDR
       Affected functions are

           pthread_attr_getstack(),
           pthread_attr_getstackaddr(),
           pthread_attr_setstack(),
           pthread_attr_setstackaddr().

   TSS - _POSIX_THREAD_ATTR_STACKSIZE - _SC_THREAD_ATTR_STACKSIZE
       Affected functions are

           pthread_attr_getstack(),
           pthread_attr_getstacksize(),
           pthread_attr_setstack(),
           pthread_attr_setstacksize().

   TCT - _POSIX_THREAD_CPUTIME - _SC_THREAD_CPUTIME
       The clockID CLOCK_THREAD_CPUTIME_ID is supported.  This option implies  the  _POSIX_TIMERS
       option.  Affected functions are

           pthread_getcpuclockid(),
           clock_getres(),
           clock_gettime(),
           clock_settime(),
           timer_create().

   TPI - _POSIX_THREAD_PRIO_INHERIT - _SC_THREAD_PRIO_INHERIT
       Affected functions are

           pthread_mutexattr_getprotocol(),
           pthread_mutexattr_setprotocol().

   TPP - _POSIX_THREAD_PRIO_PROTECT - _SC_THREAD_PRIO_PROTECT
       Affected functions are

           pthread_mutex_getprioceiling(),
           pthread_mutex_setprioceiling(),
           pthread_mutexattr_getprioceiling(),
           pthread_mutexattr_getprotocol(),
           pthread_mutexattr_setprioceiling(),
           pthread_mutexattr_setprotocol().

   TPS - _POSIX_THREAD_PRIORITY_SCHEDULING - _SC_THREAD_PRIORITY_SCHEDULING
       If this option is in effect, the different threads inside a process can run with different
       priorities and/or different schedulers.  Affected functions are

           pthread_attr_getinheritsched(),
           pthread_attr_getschedpolicy(),
           pthread_attr_getscope(),
           pthread_attr_setinheritsched(),
           pthread_attr_setschedpolicy(),
           pthread_attr_setscope(),
           pthread_getschedparam(),
           pthread_setschedparam(),
           pthread_setschedprio().

   TSH - _POSIX_THREAD_PROCESS_SHARED - _SC_THREAD_PROCESS_SHARED
       Affected functions are

           pthread_barrierattr_getpshared(),
           pthread_barrierattr_setpshared(),
           pthread_condattr_getpshared(),
           pthread_condattr_setpshared(),
           pthread_mutexattr_getpshared(),
           pthread_mutexattr_setpshared(),
           pthread_rwlockattr_getpshared(),
           pthread_rwlockattr_setpshared().

   TSF - _POSIX_THREAD_SAFE_FUNCTIONS - _SC_THREAD_SAFE_FUNCTIONS
       Affected functions are

           readdir_r(),
           getgrgid_r(),
           getgrnam_r(),
           getpwnam_r(),
           getpwuid_r(),
           flockfile(),
           ftrylockfile(),
           funlockfile(),
           getc_unlocked(),
           getchar_unlocked(),
           putc_unlocked(),
           putchar_unlocked(),
           rand_r(),
           strerror_r(),
           strtok_r(),
           asctime_r(),
           ctime_r(),
           gmtime_r(),
           localtime_r().

   TSP - _POSIX_THREAD_SPORADIC_SERVER - _SC_THREAD_SPORADIC_SERVER
       This option implies the _POSIX_THREAD_PRIORITY_SCHEDULING option.  Affected functions are

           sched_getparam(),
           sched_setparam(),
           sched_setscheduler().

   THR - _POSIX_THREADS - _SC_THREADS
       Basic support for POSIX threads is available.  The following functions are present:

           pthread_atfork(),
           pthread_attr_destroy(),
           pthread_attr_getdetachstate(),
           pthread_attr_getschedparam(),
           pthread_attr_init(),
           pthread_attr_setdetachstate(),
           pthread_attr_setschedparam(),
           pthread_cancel(),
           pthread_cleanup_push(),
           pthread_cleanup_pop(),
           pthread_cond_broadcast(),
           pthread_cond_destroy(),
           pthread_cond_init(),
           pthread_cond_signal(),
           pthread_cond_timedwait(),
           pthread_cond_wait(),
           pthread_condattr_destroy(),
           pthread_condattr_init(),
           pthread_create(),
           pthread_detach(),
           pthread_equal(),
           pthread_exit(),
           pthread_getspecific(),
           pthread_join(),
           pthread_key_create(),
           pthread_key_delete(),
           pthread_mutex_destroy(),
           pthread_mutex_init(),
           pthread_mutex_lock(),
           pthread_mutex_trylock(),
           pthread_mutex_unlock(),
           pthread_mutexattr_destroy(),
           pthread_mutexattr_init(),
           pthread_once(),
           pthread_rwlock_destroy(),
           pthread_rwlock_init(),
           pthread_rwlock_rdlock(),
           pthread_rwlock_tryrdlock(),
           pthread_rwlock_trywrlock(),
           pthread_rwlock_unlock(),
           pthread_rwlock_wrlock(),
           pthread_rwlockattr_destroy(),
           pthread_rwlockattr_init(),
           pthread_self(),
           pthread_setcancelstate(),
           pthread_setcanceltype(),
           pthread_setspecific(),
           pthread_testcancel().

   TMO - _POSIX_TIMEOUTS - _SC_TIMEOUTS
       The following functions are present:

           mq_timedreceive(),
           mq_timedsend(),
           pthread_mutex_timedlock(),
           pthread_rwlock_timedrdlock(),
           pthread_rwlock_timedwrlock(),
           sem_timedwait(),
           posix_trace_timedgetnext_event().

   TMR - _POSIX_TIMERS - _SC_TIMERS
       The following functions are present:

           clock_getres(),
           clock_gettime(),
           clock_settime(),
           nanosleep(),
           timer_create(),
           timer_delete(),
           timer_gettime(),
           timer_getoverrun(),
           timer_settime().

   TRC - _POSIX_TRACE - _SC_TRACE
       POSIX tracing is available.  The following functions are present:

           posix_trace_attr_destroy(),
           posix_trace_attr_getclockres(),
           posix_trace_attr_getcreatetime(),
           posix_trace_attr_getgenversion(),
           posix_trace_attr_getmaxdatasize(),
           posix_trace_attr_getmaxsystemeventsize(),
           posix_trace_attr_getmaxusereventsize(),
           posix_trace_attr_getname(),
           posix_trace_attr_getstreamfullpolicy(),
           posix_trace_attr_getstreamsize(),
           posix_trace_attr_init(),
           posix_trace_attr_setmaxdatasize(),
           posix_trace_attr_setname(),
           posix_trace_attr_setstreamsize(),
           posix_trace_attr_setstreamfullpolicy(),
           posix_trace_clear(),
           posix_trace_create(),
           posix_trace_event(),
           posix_trace_eventid_equal(),
           posix_trace_eventid_get_name(),
           posix_trace_eventid_open(),
           posix_trace_eventtypelist_getnext_id(),
           posix_trace_eventtypelist_rewind(),
           posix_trace_flush(),
           posix_trace_get_attr(),
           posix_trace_get_status(),
           posix_trace_getnext_event(),
           posix_trace_shutdown(),
           posix_trace_start(),
           posix_trace_stop(),
           posix_trace_trygetnext_event().

   TEF - _POSIX_TRACE_EVENT_FILTER - _SC_TRACE_EVENT_FILTER
       This option implies the _POSIX_TRACE option.  The following functions are present:

           posix_trace_eventset_add(),
           posix_trace_eventset_del(),
           posix_trace_eventset_empty(),
           posix_trace_eventset_fill(),
           posix_trace_eventset_ismember(),
           posix_trace_get_filter(),
           posix_trace_set_filter(),
           posix_trace_trid_eventid_open().

   TRI - _POSIX_TRACE_INHERIT - _SC_TRACE_INHERIT
       Tracing children of the traced process is supported.  This option implies the _POSIX_TRACE
       option.  The following functions are present:

           posix_trace_attr_getinherited(),
           posix_trace_attr_setinherited().

   TRL - _POSIX_TRACE_LOG - _SC_TRACE_LOG
       This option implies the _POSIX_TRACE option.  The following functions are present:

           posix_trace_attr_getlogfullpolicy(),
           posix_trace_attr_getlogsize(),
           posix_trace_attr_setlogfullpolicy(),
           posix_trace_attr_setlogsize(),
           posix_trace_close(),
           posix_trace_create_withlog(),
           posix_trace_open(),
           posix_trace_rewind().

   TYM - _POSIX_TYPED_MEMORY_OBJECTS - _SC_TYPED_MEMORY_OBJECT
       The following functions are present:

           posix_mem_offset(),
           posix_typed_mem_get_info(),
           posix_typed_mem_open().

   --- - _POSIX_VDISABLE
       Always  present  (probably  0).   Value  to  set a changeable special control character to
       indicate that it is disabled.

XOPEN EXTENSIONS

       _XOPEN_CRYPT, _XOPEN_LEGACY, _XOPEN_REALTIME, _XOPEN_REALTIME_THREADS, _XOPEN_UNIX.

SEE ALSO

       sysconf(3), standards(7)

COLOPHON

       This page is part of release 3.35 of the Linux man-pages project.  A  description  of  the
       project,  and information about reporting bugs, can be found at http://man7.org/linux/man-
       pages/.

                                            2007-12-21                            POSIXOPTIONS(7)