SEMGET(2) | System Calls | SEMGET(2) |
semget - get set of semaphores
#include <sys/types.h> #include <sys/ipc.h> #include <sys/sem.h> int semget(key_t key, int nsems, int semflg);
The semget() function returns the semaphore identifier associated with key.
A semaphore identifier and associated data structure and set containing nsems semaphores (see Intro(2)) are created for key if one of the following is true:
On creation, the data structure associated with the new semaphore identifier is initialized as follows:
Upon successful completion, a non-negative integer representing a semaphore identifier is returned. Otherwise, −1 is returned and errno is set to indicate the error.
The semget() function will fail if:
EACCES
EEXIST
EINVAL
A semaphore identifier exists for key, but the number of semaphores in the set associated with it is less than nsems and nsems is not equal to 0.
ENOENT
ENOSPC
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Standard |
ipcrm(1), ipcs(1), Intro(2), semctl(2), semop(2), setrctl(2), ftok(3C), attributes(7), standards(7), rctladm(8)
The system-imposed limit on the value of the nsems argument is the maintained on a per-process basis using the process.max-sem-nsems resource control.
The system-imposed limit on the number of semaphore identifiers is maintained on a per-project basis using the project.max-sem-ids resource control. The zone.max-sem-ids resource control limis the total number of semaphore identifiers that can be allocated by a zone.
See rctladm(8) and setrctl(2) for information about using resource controls.
August 14, 2006 | OmniOS |