NOM

posixoptions – Options de la norme POSIX

DESCRIPTION

La norme POSIX (les informations ci-dessous sont extraites de la spécification POSIX.1-2001) décrit un ensemble de comportements et d'interfaces pour la conformité d'un système. Toutefois, beaucoup d'interfaces sont facultatives et il existe des macros de test de fonctionnalité pour tester la disponibilité des interfaces à la compilation et les fonctions sysconf(3), fpathconf(3), pathconf(3) et confstr(3) pour effectuer la même chose à l'exécution. Dans des scripts shell, vous pouvez utiliser getconf(1). Pour plus de détails, consultez sysconf(3).
Nous donnerons le nom de l'abréviation POSIX, l'option, le nom du paramètre passé à sysconf(3) pour s'enquérir de l'option et éventuellement une très courte description. Des détails plus précis pourront être trouvés dans la norme POSIX elle-même, aujourd'hui librement accessible sur le web.

ADV - _POSIX_ADVISORY_INFO - _SC_ADVISORY_INFO

Les fonctions de renseignement suivantes sont présentes :

posix_fadvise() posix_fallocate() posix_memalign() posix_madvise()

AIO - _POSIX_ASYNCHRONOUS_IO - _SC_ASYNCHRONOUS_IO

L'en-tête <aio.h> est présent. Les fonctions suivantes sont présentes :

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

BAR - _POSIX_BARRIERS - _SC_BARRIERS

Cette option implique les options _POSIX_THREADS et _POSIX_THREAD_SAFE_FUNCTIONS. Les fonctions suivantes sont présentes :

pthread_barrier_destroy() pthread_barrier_init() pthread_barrier_wait() pthread_barrierattr_destroy() pthread_barrierattr_init()

--- - POSIX_CHOWN_RESTRICTED

Si cette option est en vigueur (comme c'est toujours le cas sous POSIX.1-2001), seul le superutilisateur peut modifier le propriétaire d'un fichier, les utilisateurs ne pouvant que modifier le groupe d'un fichier vers un des groupes auxquels ils appartiennent. Cela affecte les fonctions suivantes :

chown() fchown()

CS - _POSIX_CLOCK_SELECTION - _SC_CLOCK_SELECTION

Cette option implique l'option _POSIX_TIMERS. Les fonctions suivantes sont présentes :

pthread_condattr_getclock() pthread_condattr_setclock() clock_nanosleep()
Si CLOCK_REALTIME est modifiée par la fonction clock_settime(), cela concerne tous les temporisateurs configurés pour une heure absolue.

CPT - _POSIX_CPUTIME - _SC_CPUTIME

L'identifiant d'horloge CLOCK_PROCESS_CPUTIME_ID est pris en charge. La valeur initiale de cette horloge est 0 pour chaque processus. Cette option implique l'option _POSIX_TIMERS. La fonction clock_getcpuclockid() est présente.

--- - _POSIX_FILE_LOCKING - _SC_FILE_LOCKING

Cette option a été supprimée et n’existe pas dans la norme finale XPG6.

FSC - _POSIX_FSYNC - _SC_FSYNC

La fonction fsync() est présente.

IP6 - _POSIX_IPV6 - _SC_IPV6

Internet Protocol Version 6 est prise en charge.

--- - _POSIX_JOB_CONTROL - _SC_JOB_CONTROL

Si cette option est en vigueur (comme c'est toujours le cas sous POSIX.1-2001), le système implémente le contrôle de travaux de style POSIX et les fonctions suivantes sont présentes :

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

MF - _POSIX_MAPPED_FILES - _SC_MAPPED_FILES

La mémoire partagée est gérée. Le fichier d'en-tête <sys/mman.h> est présent. Les fonctions suivantes sont présentes :

mmap() msync() munmap()

ML - _POSIX_MEMLOCK - _SC_MEMLOCK

La mémoire partagée peut être verrouillée par le noyau. Les fonctions suivantes sont présentes :

mlockall() munlockall()

MR/MLR - _POSIX_MEMLOCK_RANGE - _SC_MEMLOCK_RANGE

Plus précisément, des intervalles peuvent être verrouillés par le noyau. Les fonctions suivantes sont présentes :

mlock() munlock()

MPR - _POSIX_MEMORY_PROTECTION - _SC_MEMORY_PROTECTION

La fonction mprotect() est présente.

MSG - _POSIX_MESSAGE_PASSING - _SC_MESSAGE_PASSING

Le fichier d'en-tête <mqueue.h> est présent. Les fonctions suivantes sont présentes :

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 est gérée. Cette option implique l'option _POSIX_TIMERS. Les fonctions suivantes sont affectées :

aio_suspend() clock_getres() clock_gettime() clock_settime() timer_create()

--- - _POSIX_MULTI_PROCESS - _SC_MULTI_PROCESS

Cette option a été supprimée et n’existe pas dans la norme finale XPG6.

--- - _POSIX_NO_TRUNC

Si cette option est en vigueur (comme c'est toujours le cas sous POSIX.1-2001), les éléments de nom de chemin plus long que NAME_MAX ne sont pas tronqués, mais provoquent une erreur. Cette propriété peut être dépendante du préfixe du chemin de l'élément.

PIO - _POSIX_PRIORITIZED_IO - _SC_PRIORITIZED_IO

Cette option indique que l'on peut spécifier des priorités pour les entrées et sorties asynchrones. Cela affecte les fonctions :

aio_read() aio_write()

PS - _POSIX_PRIORITY_SCHEDULING - _SC_PRIORITY_SCHEDULING

Le fichier d'en-tête <sched.h> est présent. Les fonctions suivantes sont présentes :

sched_get_priority_max() sched_get_priority_min() sched_getparam() sched_getscheduler() sched_rr_get_interval() sched_setparam() sched_setscheduler() sched_yield()
Si _POSIX_SPAWN est également en vigueur, les fonctions suivantes sont présentes :

posix_spawnattr_getschedparam() posix_spawnattr_getschedpolicy() posix_spawnattr_setschedparam() posix_spawnattr_setschedpolicy()

RS - _POSIX_RAW_SOCKETS

Les sockets bruts (raw) sont gérés. Les fonctions suivantes sont affectées :

getsockopt() setsockopt()

--- - _POSIX_READER_WRITER_LOCKS - _SC_READER_WRITER_LOCKS

Cette option implique l'option _POSIX_THREADS. Réciproquement, dans la spécification POSIX.1-2001, l'option _POSIX_THREADS implique celle-ci.
Les fonctions suivantes sont présentes :

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

Les signaux temps réel sont gérés. Les fonctions suivantes sont présentes :

sigqueue() sigtimedwait() sigwaitinfo()

--- - _POSIX_REGEXP - _SC_REGEXP

Si cette option est en vigueur (comme c'est toujours le cas sous POSIX.1-2001), les expressions rationnelles POSIX sont prises en charge et les fonctions suivantes sont présentes :

regcomp() regerror() regexec() regfree()

--- - _POSIX_SAVED_IDS - _SC_SAVED_IDS

Si cette option est en vigueur (comme c'est toujours le cas sous POSIX.1-2001), un processus a un Set-UID et un Set-GID sauvegardé. Les fonctions suivantes sont affectées :

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

SEM - _POSIX_SEMAPHORES - _SC_SEMAPHORES

Le fichier d'en-tête <semaphore.h> est présent. Les fonctions suivantes sont présentes :

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

Les fonctions suivantes sont présentes :

mmap() munmap() shm_open() shm_unlink()

--- - _POSIX_SHELL - _SC_SHELL

Si cette option est en vigueur (comme c'est toujours le cas sous POSIX.1-2001), la fonction system() est présente.

SPN - _POSIX_SPAWN - _SC_SPAWN

Cette option décrit la gestion de la création d'un processus dans un contexte où il est difficile voire impossible d'utiliser fork(), par exemple lorsqu'aucun NMU n'est présent.
Si _POSIX_SPAWN est également en vigueur, alors le fichier d’en-tête <spawn.h> et les fonctions suivantes sont présents :

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()
Si _POSIX_PRIORITY_SCHEDULING est également en vigueur, les fonctions suivantes sont présentes :

posix_spawnattr_getschedparam() posix_spawnattr_getschedpolicy() posix_spawnattr_setschedparam() posix_spawnattr_setschedpolicy()

SPI - _POSIX_SPIN_LOCKS - _SC_SPIN_LOCKS

Cette option implique les options _POSIX_THREADS et _POSIX_THREAD_SAFE_FUNCTIONS. Les fonctions suivantes sont présentes :

pthread_spin_destroy() pthread_spin_init() pthread_spin_lock() pthread_spin_trylock() pthread_spin_unlock()

SS - _POSIX_SPORADIC_SERVER - _SC_SPORADIC_SERVER

La politique d'ordonnancement SCHED_SPORADIC est prise en charge. Cette option implique l'option _POSIX_PRIORITY_SCHEDULING. Les fonctions suivantes sont affectées :

sched_setparam() sched_setscheduler()

SIO - _POSIX_SYNCHRONIZED_IO - _SC_SYNCHRONIZED_IO

Les fonctions suivantes sont affectées :

open() msync() fsync() fdatasync()

TSA - _POSIX_THREAD_ATTR_STACKADDR - _SC_THREAD_ATTR_STACKADDR

Les fonctions suivantes sont affectées :

pthread_attr_getstack() pthread_attr_getstackaddr() pthread_attr_setstack() pthread_attr_setstackaddr()

TSS - _POSIX_THREAD_ATTR_STACKSIZE - _SC_THREAD_ATTR_STACKSIZE

Les fonctions suivantes sont affectées :

pthread_attr_getstack() pthread_attr_getstacksize() pthread_attr_setstack() pthread_attr_setstacksize()

TCT - _POSIX_THREAD_CPUTIME - _SC_THREAD_CPUTIME

L'identifiant d'horloge CLOCK_THREAD_CPUTIME_ID est géré. Cette option implique l'option _POSIX_TIMERS. Les fonctions suivantes sont affectées :

pthread_getcpuclockid() clock_getres() clock_gettime() clock_settime() timer_create()

TPI - _POSIX_THREAD_PRIO_INHERIT - _SC_THREAD_PRIO_INHERIT

Les fonctions suivantes sont affectées :

pthread_mutexattr_getprotocol() pthread_mutexattr_setprotocol()

TPP - _POSIX_THREAD_PRIO_PROTECT - _SC_THREAD_PRIO_PROTECT

Les fonctions suivantes sont affectées :

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

Si cette option est en vigueur, les différents processus légers (« threads ») à l'intérieur d'un processus peuvent être exécutés avec différentes priorités et/ou par différents ordonnanceurs. Les fonctions suivantes sont affectées :

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

Les fonctions suivantes sont affectées :

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

Les fonctions suivantes sont affectées :

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

Cette option implique l'option _POSIX_THREAD_PRIORITY_SCHEDULING. Les fonctions suivantes sont affectées :

sched_getparam() sched_setparam() sched_setscheduler()

THR - _POSIX_THREADS - _SC_THREADS

La gestion de base de processus légers POSIX est disponible. Les fonctions suivantes sont présentes :

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

Les fonctions suivantes sont présentes :

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

TMR - _POSIX_TIMERS - _SC_TIMERS

Les fonctions suivantes sont présentes :

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

TRC - _POSIX_TRACE - _SC_TRACE

Le traçage POSIX est disponible. Les fonctions suivantes sont présentes :

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

Cette option implique l'option _POSIX_TRACE. Les fonctions suivantes sont présentes :

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

Le traçage d'enfants de processus tracés est pris en charge. Cette option implique l'option _POSIX_TRACE. Les fonctions suivantes sont présentes :

posix_trace_attr_getinherited() posix_trace_attr_setinherited()

TRL - _POSIX_TRACE_LOG - _SC_TRACE_LOG

Cette option implique l'option _POSIX_TRACE. Les fonctions suivantes sont présentes :

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

Les fonctions suivantes sont présentes :

posix_mem_offset() posix_typed_mem_get_info() posix_typed_mem_open()

--- - _POSIX_VDISABLE

Toujours présente (probablement 0). Valeur pour positionner un caractère de contrôle spécial, modifiable pour indiquer qu'il est désactivé.

EXTENSIONS D’INTERFACE SYSTÈME X/OPEN

XSI - _XOPEN_CRYPT - _SC_XOPEN_CRYPT

Les fonctions suivantes sont présentes :

crypt() encrypt() setkey()

XSI - _XOPEN_REALTIME - _SC_XOPEN_REALTIME

Cette option implique les options suivantes :
_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 - --- - ---

Le groupe d’options temps réel amélioré implique que les options suivantes soient définies pour 200112L :
_POSIX_ADVISORY_INFO
_POSIX_CLOCK_SELECTION
(implique _POSIX_TIMERS)
_POSIX_CPUTIME
(implique _POSIX_TIMERS)
_POSIX_MONOTONIC_CLOCK
(implique _POSIX_TIMERS)
_POSIX_SPAWN
_POSIX_SPORADIC_SERVER
(implique _POSIX_THREAD_PRIORITY_SCHEDULING)
_POSIX_TIMEOUTS
_POSIX_TYPED_MEMORY_OBJECTS

XSI - _XOPEN_REALTIME_THREADS - _SC_XOPEN_REALTIME_THREADS

Cette option implique que les options suivantes soient toutes définies dans 200112L :
_POSIX_THREAD_PRIO_INHERIT
_POSIX_THREAD_PRIO_PROTECT
_POSIX_THREAD_PRIORITY_SCHEDULING

THREADS TEMPS RÉEL AMÉLIORÉ - --- - ---

Cette option implique que les options suivantes soient toutes définies dans 200112L :
_POSIX_BARRIERS
(implique _POSIX_THREADS, _POSIX_THREAD_SAFE_FUNCTIONS)
_POSIX_SPIN_LOCKS
(implique _POSIX_THREADS, _POSIX_THREAD_SAFE_FUNCTIONS)
_POSIX_THREAD_CPUTIME
(implique _POSIX_TIMERS)
_POSIX_THREAD_SPORADIC_SERVER
(implique _POSIX_THREAD_PRIORITY_SCHEDULING)

TRAÇAGE - --- - ---

Cette option implique que les options suivantes soient toutes définies dans 200112L :
_POSIX_TRACE
_POSIX_TRACE_EVENT_FILTER
_POSIX_TRACE_LOG
_POSIX_TRACE_INHERIT

STREAMS - _XOPEN_STREAMS - _SC_XOPEN_STREAMS

Les fonctions suivantes sont présentes :

fattach() fdetach() getmsg() getpmsg() ioctl() isastream() putmsg() putpmsg()

XSI - _XOPEN_LEGACY - _SC_XOPEN_LEGACY

Les fonctions incluses dans le groupe d’options patrimonial étaient auparavant obligatoires, mais sont facultatives dans cette version. Les fonctions suivantes sont présentes :

bcmp() bcopy() bzero() ecvt() fcvt() ftime() gcvt() getwd() index() mktemp() rindex() utimes() wcswcs()

XSI - _XOPEN_UNIX - _SC_XOPEN_UNIX

Les fonctions suivantes sont présentes :

mmap() munmap() msync()
Cette option implique les options suivantes :
_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
Cette option peut impliquer les options suivantes des groupes d’options XSI :
Chiffrement (_XOPEN_CRYPT)
Temps réel (_XOPEN_REALTIME)
Temps réel amélioré (ADB)
Threads temps réel (_XOPEN_REALTIME_THREADS)
Threads temps réel amélioré (ADVANCED REALTIME THREADS)
Traçage (TRACING)
Flux XSI (STREAMS)
Patrimoine (_XOPEN_LEGACY)

VOIR AUSSI

sysconf(3), standards(7)

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <[email protected]>, Thierry Vignaud <[email protected]>, François Micaux, Alain Portal <[email protected]>, Jean-Philippe Guérard <[email protected]>, Jean-Luc Coulon (f5ibh) <[email protected]>, Julien Cristau <[email protected]>, Thomas Huriaux <[email protected]>, Nicolas François <[email protected]>, Florentin Duneau <[email protected]>, Simon Paillard <[email protected]>, Denis Barbier <[email protected]>, David Prévot <[email protected]> et Jean-Paul Guillonneau <[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à [email protected]

Recommended readings

Pages related to posixoptions you should read also: