Yolinux.com

posixoptions manpage

Search topic Section


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().

   --- - 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
       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	 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	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 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.  Affected functions are  getsockopt(),  set-
       sockopt().

   --- - _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 4.10 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/.



				  2007-12-21		       POSIXOPTIONS(7)