| SEMGET(2) | System Calls Manual | SEMGET(2) | 
semget —
#include <sys/sem.h>
int
  
  semget(key_t
    key, int nsems,
    int semflg);
semget() system call returns the semaphore
  identifier associated with key.
A new set containing nsems semaphores is
    created if either key is equal to
    IPC_PRIVATE, or key does not
    have a semaphore set associated with it and the
    IPC_CREAT bit is set in
    semflg. If both the IPC_CREAT
    bit and the IPC_EXCL bit are set in
    semflg, and key has a semaphore
    set associated with it already, the operation will fail.
If a new set of semaphores is created, the data structure associated with it (the semid_ds structure, see semctl(2)) is initialized as follows:
semget() returns a non-negative semaphore identifier if
  successful. Otherwise, -1 is returned and errno is set
  to reflect the error.
EACCES]EEXIST]IPC_CREAT and
      IPC_EXCL are set in semflg,
      and a semaphore set is already associated with
    key.EINVAL]A semaphore set associated with key exists, but has fewer semaphores than the number specified in nsems.
ENOSPC]ENOENT]IPC_CREAT
      is not set in semflg and no semaphore set associated
      with key was found.semget system call conforms to
  X/Open System Interfaces and Headers Issue 5
  (“XSH5”).
| May 13, 2004 | NetBSD 10.0 |