GENWiki

Premier IT Outsourcing and Support Services within the UK

User Tools

Site Tools


man:posixoptions

POSIXOPTIONS(7) Linux Programmer's Manual POSIXOPTIONS(7)

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()
  1. – - 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 set the group
     of a file only to one of the groups it belongs to.   This  affects  the
     following 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  CLOCK_PROCESS_CPUTIME_ID clock 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.
  1. – - _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.
  1. – - _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  func-
     tions 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  following  functions  are
     present:
         mlockall()
         munlockall()
 MR/MLR - _POSIX_MEMLOCK_RANGE - _SC_MEMLOCK_RANGE
     More  precisely,  ranges  can be locked into core.  The following func-
     tions are present:
         mlock()
         munlock()
 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.  The following functions are affected:
         aio_suspend()
         clock_getres()
         clock_gettime()
         clock_settime()
         timer_create()
  1. – - _POSIX_MULTI_PROCESS - _SC_MULTI_PROCESS

This option has been deleted. Not in final XPG6.

  1. – - _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 compo-
     nent.
 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.  The following functions are affected:
         getsockopt()
         setsockopt()
  1. – - _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()
  1. – - _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()
  1. – - _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.   The  fol-
     lowing functions are affected:
         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()
  1. – - _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.   The  following functions are
     affected:
         sched_setparam()
         sched_setscheduler()
 SIO - _POSIX_SYNCHRONIZED_IO - _SC_SYNCHRONIZED_IO
     The following functions are affected:
         open()
         msync()
         fsync()
         fdatasync()
 TSA - _POSIX_THREAD_ATTR_STACKADDR - _SC_THREAD_ATTR_STACKADDR
     The following functions are affected:
         pthread_attr_getstack()
         pthread_attr_getstackaddr()
         pthread_attr_setstack()
         pthread_attr_setstackaddr()
 TSS - _POSIX_THREAD_ATTR_STACKSIZE - _SC_THREAD_ATTR_STACKSIZE
     The following functions are affected:
         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.  The following functions are affected:
         pthread_getcpuclockid()
         clock_getres()
         clock_gettime()
         clock_settime()
         timer_create()
 TPI - _POSIX_THREAD_PRIO_INHERIT - _SC_THREAD_PRIO_INHERIT
     The following functions are affected:
         pthread_mutexattr_getprotocol()
         pthread_mutexattr_setprotocol()
 TPP - _POSIX_THREAD_PRIO_PROTECT - _SC_THREAD_PRIO_PROTECT
     The following functions are affected:
         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.  The follow-
     ing functions are affected:
         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
     The following functions are affected:
         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
     The following functions are affected:
         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.  The
     following functions are affected:
         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()
  1. – - _POSIX_VDISABLE

Always present (probably 0). Value to set a changeable special control

     character to indicate that it is disabled.

X/OPEN SYSTEM INTERFACE EXTENSIONS

 XSI - _XOPEN_CRYPT - _SC_XOPEN_CRYPT
     The following functions are present:
         crypt()
         encrypt()
         setkey()
 XSI - _XOPEN_REALTIME - _SC_XOPEN_REALTIME
     This option implies the following options:
     _POSIX_ASYNCHRONOUS_IO==200112L
     _POSIX_FSYNC
     _POSIX_MAPPED_FILES
     _POSIX_MEMLOCK==200112L
     _POSIX_MEMLOCK_RANGE==200112L
     _POSIX_MEMORY_PROTECTION
     _POSIX_MESSAGE_PASSING==200112L
     _POSIX_PRIORITIZED_IO
     _POSIX_PRIORITY_SCHEDULING==200112L
     _POSIX_REALTIME_SIGNALS==200112L
     _POSIX_SEMAPHORES==200112L
     _POSIX_SHARED_MEMORY_OBJECTS==200112L
     _POSIX_SYNCHRONIZED_IO==200112L
     _POSIX_TIMERS==200112L
 ADV - --- - ---
     The  Advanced  Realtime option group implies that the following options
     are all defined to 200112L:
     _POSIX_ADVISORY_INFO
     _POSIX_CLOCK_SELECTION
            (implies _POSIX_TIMERS)
     _POSIX_CPUTIME
            (implies _POSIX_TIMERS)
     _POSIX_MONOTONIC_CLOCK
            (implies _POSIX_TIMERS)
     _POSIX_SPAWN
     _POSIX_SPORADIC_SERVER
            (implies _POSIX_PRIORITY_SCHEDULING)
     _POSIX_TIMEOUTS
     _POSIX_TYPED_MEMORY_OBJECTS
 XSI - _XOPEN_REALTIME_THREADS - _SC_XOPEN_REALTIME_THREADS
     This option implies that the  following  options  are  all  defined  to
     200112L:
     _POSIX_THREAD_PRIO_INHERIT
     _POSIX_THREAD_PRIO_PROTECT
     _POSIX_THREAD_PRIORITY_SCHEDULING
 ADVANCED REALTIME THREADS - --- - ---
     This  option  implies  that  the  following  options are all defined to
     200112L:
     _POSIX_BARRIERS
            (implies _POSIX_THREADS, _POSIX_THREAD_SAFE_FUNCTIONS)
     _POSIX_SPIN_LOCKS
            (implies _POSIX_THREADS, _POSIX_THREAD_SAFE_FUNCTIONS)
     _POSIX_THREAD_CPUTIME
            (implies _POSIX_TIMERS)
     _POSIX_THREAD_SPORADIC_SERVER
            (implies _POSIX_THREAD_PRIORITY_SCHEDULING)
 TRACING - --- - ---
     This option implies that the  following  options  are  all  defined  to
     200112L:
     _POSIX_TRACE
     _POSIX_TRACE_EVENT_FILTER
     _POSIX_TRACE_LOG
     _POSIX_TRACE_INHERIT
 STREAMS - _XOPEN_STREAMS - _SC_XOPEN_STREAMS
     The following functions are present:
         fattach()
         fdetach()
         getmsg()
         getpmsg()
         ioctl()
         isastream()
         putmsg()
         putpmsg()
 XSI - _XOPEN_LEGACY - _SC_XOPEN_LEGACY
     Functions  included  in  the legacy option group were previously manda-
     tory, but are now optional in this version.   The  following  functions
     are present:
         bcmp()
         bcopy()
         bzero()
         ecvt()
         fcvt()
         ftime()
         gcvt()
         getcwd()
         index()
         mktemp()
         rindex()
         utimes()
         wcswcs()
 XSI - _XOPEN_UNIX - _SC_XOPEN_UNIX
     The following functions are present:
         mmap()
         munmap()
         msync()
     This option implies the following options:
     _POSIX_FSYNC
     _POSIX_MAPPED_FILES
     _POSIX_MEMORY_PROTECTION
     _POSIX_THREAD_ATTR_STACKADDR
     _POSIX_THREAD_ATTR_STACKSIZE
     _POSIX_THREAD_PROCESS_SHARED
     _POSIX_THREAD_SAFE_FUNCTIONS
     _POSIX_THREADS
     This option may imply the following options from the XSI option groups:
     Encryption (_XOPEN_CRYPT)
     Realtime (_XOPEN_REALTIME)
     Advanced Realtime (ADB)
     Realtime Threads (_XOPEN_REALTIME_THREADS)
     Advanced Realtime Threads (ADVANCED REALTIME THREADS)
     Tracing (TRACING)
     XSI Streams (STREAMS)
     Legacy (_XOPEN_LEGACY)

SEE ALSO

     sysconf(3), standards(7)

COLOPHON

     This page is part of release 4.16 of the Linux  man-pages  project.   A
     description  of  the project, information about reporting bugs, and the
     latest    version    of    this    page,    can     be     found     at
     https://www.kernel.org/doc/man-pages/.
                                2018-04-30                   POSIXOPTIONS(7)
/data/webs/external/dokuwiki/data/pages/man/posixoptions.txt · Last modified: 2019/05/17 09:47 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki