Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ semget(2) — Dell System V Release 4 Issue 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(2)

semctl(2)

semop(2)

stdipc(3C)



semget(2)                        UNIX System V                        semget(2)


NAME
      semget - get set of semaphores

SYNOPSIS
      #include <sys/types.h>
      #include <sys/ipc.h>
      #include <sys/sem.h>

      int semget(keyt key, int nsems, int semflg);

DESCRIPTION
      semget 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:

            key is equal to IPCPRIVATE.

            key does not already have a semaphore identifier associated with
            it, and (semflg&IPCCREAT) is true.

      On creation, the data structure associated with the new semaphore
      identifier is initialized as follows:

            semperm.cuid, semperm.uid, semperm.cgid, and semperm.gid are
            set equal to the effective user ID and effective group ID,
            respectively, of the calling process.

            The access permission bits of semperm.mode are set equal to the
            access permission bits of semflg.

            semnsems is set equal to the value of nsems.

            semotime is set equal to 0 and semctime is set equal to the
            current time.

      semget fails if one or more of the following are true:

      EINVAL         nsems is either less than or equal to zero or greater than
                     the system-imposed limit.

      EACCES         A semaphore identifier exists for key, but operation
                     permission [see intro(2)] as specified by the low-order 9
                     bits of semflg would not be granted.

      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 zero.





10/89                                                                    Page 1







semget(2)                        UNIX System V                        semget(2)


      ENOENT         A semaphore identifier does not exist for key and
                     (semflg&IPCCREAT) is false.

      ENOSPC         A semaphore identifier is to be created but the system-
                     imposed limit on the maximum number of allowed semaphore
                     identifiers system wide would be exceeded.

      ENOSPC         A semaphore identifier is to be created but the system-
                     imposed limit on the maximum number of allowed semaphores
                     system wide would be exceeded.

      EEXIST         A semaphore identifier exists for key but both
                     (semflg&IPCCREAT) and (semflg&IPCEXCL) are both true.

SEE ALSO
      intro(2), semctl(2), semop(2), stdipc(3C).

DIAGNOSTICS
      Upon successful completion, a non-negative integer, namely a semaphore
      identifier, is returned.  Otherwise, a value of -1 is returned and errno
      is set to indicate the error.

































Page 2                                                                    10/89





Typewritten Software • bear@typewritten.org • Edmonds, WA 98026