7:posixoptions

From Linux Man Pages

Jump to: navigation, search
      posixoptions - optional parts of the POSIX standard
      

Contents

DESCRIPTION

      The  POSIX standard (the information below is from POSIX.1-2001) describes a set of behaviours and interfaces for
      a compliant system.  However, many interfaces are optional and there are feature test macros to test  the  avail-
      ability 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() 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 advisory functions
          posix_fadvise(),
          posix_fallocate(),
          posix_memalign(),
          posix_madvise()
      are present.

AIO - _POSIX_ASYNCHRONOUS_IO - _SC_ASYNCHRONOUS_IO

      The header <aio.h> is present.  The functions
          aio_cancel(),
          aio_error(),
          aio_fsync(),
          aio_read(),
          aio_return(),
          aio_suspend(),
          aio_write(),
          lio_listio()
      are present.

BAR - _POSIX_BARRIERS - _SC_BARRIERS

      This option implies the _POSIX_THREADS and _POSIX_THREAD_SAFE_FUNCTIONS options.  The functions
          pthread_barrier_destroy(),
          pthread_barrier_init(),
          pthread_barrier_wait(),
          pthread_barrierattr_destroy(),
          pthread_barrierattr_init()
      are present.

--- - 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  non-root  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 functions
          pthread_condattr_getclock(),
          pthread_condattr_setclock(),
          clock_nanosleep()
      are present.  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  con-
      trol, and the functions
          setpgid(),
          tcdrain(),
          tcflush(),
          tcgetpgrp(),
          tcsendbreak(),
          tcsetattr(),
          tcsetpgrp()
      are present.

MF - _POSIX_MAPPED_FILES - _SC_MAPPED_FILES

      Shared memory is supported. The include file <sys/mman.h> is present. The functions mmap(), msync(), munmap() are
      present.

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 functions
          mq_close(),
          mq_getattr(),
          mq_notify(),
          mq_open(),
          mq_receive(),
          mq_send(),
          mq_setattr(),
          mq_unlink()
      are present.

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 functions
          sched_get_priority_max(),
          sched_get_priority_min(),
          sched_getparam(),
          sched_getscheduler(),
          sched_rr_get_interval(),
          sched_setparam(),
          sched_setscheduler(),
          sched_yield()
      are present.  If also _POSIX_SPAWN is in effect, then the functions
          posix_spawnattr_getschedparam(),
          posix_spawnattr_getschedpolicy(),
          posix_spawnattr_setschedparam(),
          posix_spawnattr_setschedpolicy()
      are present.

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 functions
          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()
      are present.

RTS - _POSIX_REALTIME_SIGNALS - _SC_REALTIME_SIGNALS

      Realtime signals are supported. The functions
          sigqueue(),
          sigtimedwait(),
          sigwaitinfo()
      are present.

--- - _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 functions
          regcomp(),
          regerror(),
          regexec(),
          regfree()
      are present.

--- - _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 functions
          sem_close(),
          sem_destroy(),
          sem_getvalue(),
          sem_init(),
          sem_open(),
          sem_post(),
          sem_trywait(),
          sem_unlink(),
          sem_wait()
      are present.

SHM - _POSIX_SHARED_MEMORY_OBJECTS - _SC_SHARED_MEMORY_OBJECTS

      The functions
          mmap(),
          munmap(),
          shm_open(),
          shm_unlink()
      are present.

--- - _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(),  e.g.  because  no MMU is present.  If _POSIX_SPAWN is in effect, then the include file <spawn.h> and the
      functions
          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()
      are present.  If also _POSIX_PRIORITY_SCHEDULING is in effect, then the functions
          posix_spawnattr_getschedparam(),
          posix_spawnattr_getschedpolicy(),
          posix_spawnattr_setschedparam(),
          posix_spawnattr_setschedpolicy()
      are present.

SPI - _POSIX_SPIN_LOCKS - _SC_SPIN_LOCKS

      This option implies the _POSIX_THREADS and _POSIX_THREAD_SAFE_FUNCTIONS options.  The functions
          pthread_spin_destroy(),
          pthread_spin_init(),
          pthread_spin_lock(),
          pthread_spin_trylock(),
          pthread_spin_unlock()
      are present.

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 func-
      tions 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 dif-
      ferent 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 functions
          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()
      are present.

TMO - _POSIX_TIMEOUTS - _SC_TIMEOUTS

      The functions
          mq_timedreceive(),
          mq_timedsend(),
          pthread_mutex_timedlock(),
          pthread_rwlock_timedrdlock(),
          pthread_rwlock_timedwrlock(),
          sem_timedwait(),
          posix_trace_timedgetnext_event()
      are present.

TMR - _POSIX_TIMERS - _SC_TIMERS

      The functions
          clock_getres(),
          clock_gettime(),
          clock_settime(),
          nanosleep(),
          timer_create(),
          timer_delete(),
          timer_gettime(),
          timer_getoverrun(),
          timer_settime()
      are present.

TRC - _POSIX_TRACE - _SC_TRACE

      POSIX tracing is available. The functions
          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()
      are present.

TEF - _POSIX_TRACE_EVENT_FILTER - _SC_TRACE_EVENT_FILTER

      This option implies the _POSIX_TRACE option.  The functions
          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()
      are present.

TRI - _POSIX_TRACE_INHERIT - _SC_TRACE_INHERIT

      Tracing children of the traced process is supported.  This option implies the _POSIX_TRACE option.  The functions
          posix_trace_attr_getinherited(),
          posix_trace_attr_setinherited()
      are present.

TRL - _POSIX_TRACE_LOG - _SC_TRACE_LOG

      This option implies the _POSIX_TRACE option.  The functions
          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()
      are present.

TYM - _POSIX_TYPED_MEMORY_OBJECTS - _SC_TYPED_MEMORY_OBJECT

      The functions
          posix_mem_offset(),
          posix_typed_mem_get_info(),
          posix_typed_mem_open()
      are present.

--- - _POSIX_VDISABLE

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

XOPEN EXTENSIONS

      _XOPEN_CRYPT, _XOPEN_LEGACY, _XOPEN_REALTIME, _XOPEN_REALTIME_THREADS, _XOPEN_UNIX.


RELATED

      sysconf(3)

CATEGORY

Personal tools