diff options
Diffstat (limited to 'upstream/mageia-cauldron/man0p/sys_sem.h.0p')
-rw-r--r-- | upstream/mageia-cauldron/man0p/sys_sem.h.0p | 164 |
1 files changed, 164 insertions, 0 deletions
diff --git a/upstream/mageia-cauldron/man0p/sys_sem.h.0p b/upstream/mageia-cauldron/man0p/sys_sem.h.0p new file mode 100644 index 00000000..869d0e8e --- /dev/null +++ b/upstream/mageia-cauldron/man0p/sys_sem.h.0p @@ -0,0 +1,164 @@ +'\" et +.TH sys_sem.h "0P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" +.SH PROLOG +This manual page is part of the POSIX Programmer's Manual. +The Linux implementation of this interface may differ (consult +the corresponding Linux manual page for details of Linux behavior), +or the interface may not be implemented on Linux. +.\" +.SH NAME +sys/sem.h +\(em XSI semaphore facility +.SH SYNOPSIS +.LP +.nf +#include <sys/sem.h> +.fi +.SH DESCRIPTION +The +.IR <sys/sem.h> +header shall define the following symbolic constant for use as a +semaphore operation flag: +.IP SEM_UNDO 12 +Set up adjust on exit entry. +.P +The +.IR <sys/sem.h> +header shall define the following symbolic constants for use as +commands for the +\fIsemctl\fR() +function: +.IP GETNCNT 12 +Get +.IR semncnt . +.IP GETPID 12 +Get +.IR sempid . +.IP GETVAL 12 +Get +.IR semval . +.IP GETALL 12 +Get all cases of +.IR semval . +.IP GETZCNT 12 +Get +.IR semzcnt . +.IP SETVAL 12 +Set +.IR semval . +.IP SETALL 12 +Set all cases of +.IR semval . +.P +The +.IR <sys/sem.h> +header shall define the +.BR semid_ds +structure, which shall include the following members: +.sp +.RS 4 +.nf + +struct ipc_perm sem_perm \fROperation permission structure.\fR +unsigned short sem_nsems \fRNumber of semaphores in set.\fR +time_t sem_otime \fRLast \fIsemop\fP\^(\|) time.\fR +time_t sem_ctime \fRLast time changed by \fIsemctl\fP\^(\|).\fR +.fi +.P +.RE +.P +The +.IR <sys/sem.h> +header shall define the +.BR pid_t , +.BR size_t , +and +.BR time_t +types as described in +.IR <sys/types.h> . +.P +A semaphore shall be represented by an anonymous structure, +which shall include the following members: +.sp +.RS 4 +.nf + +unsigned short semval \fRSemaphore value.\fR +pid_t sempid \fRProcess ID of last operation.\fR +unsigned short semncnt \fRNumber of processes waiting for \fIsemval\fR + \fRto become greater than current value.\fR +unsigned short semzcnt \fRNumber of processes waiting for \fIsemval\fR + \fRto become 0.\fR +.fi +.P +.RE +.P +The +.IR <sys/sem.h> +header shall define the +.BR sembuf +structure, which shall include the following members: +.sp +.RS 4 +.nf + +unsigned short sem_num \fRSemaphore number.\fR +short sem_op \fRSemaphore operation.\fR +short sem_flg \fROperation flags.\fR +.fi +.P +.RE +.P +The following shall be declared as functions and may also be defined as +macros. Function prototypes shall be provided. +.sp +.RS 4 +.nf + +int semctl(int, int, int, ...); +int semget(key_t, int, int); +int semop(int, struct sembuf *, size_t); +.fi +.P +.RE +.P +In addition, the +.IR <sys/sem.h> +header shall include the +.IR <sys/ipc.h> +header. +.LP +.IR "The following sections are informative." +.SH "APPLICATION USAGE" +None. +.SH RATIONALE +None. +.SH "FUTURE DIRECTIONS" +None. +.SH "SEE ALSO" +.IR "\fB<sys_ipc.h>\fP", +.IR "\fB<sys_types.h>\fP" +.P +The System Interfaces volume of POSIX.1\(hy2017, +.IR "\fIsemctl\fR\^(\|)", +.IR "\fIsemget\fR\^(\|)", +.IR "\fIsemop\fR\^(\|)" +.\" +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1-2017, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 7, 2018 Edition, +Copyright (C) 2018 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. +In the event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . +.PP +Any typographical or formatting errors that appear +in this page are most likely +to have been introduced during the conversion of the source files to +man page format. To report such errors, see +https://www.kernel.org/doc/man-pages/reporting_bugs.html . |