Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ semget(2) — Atari System V ue12

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(2)

semctl(2)

semop(2)

stdipc(3C)





   semget(2)                                                         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.




   7/91                                                                 Page 1









   semget(2)                                                         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.

         EEXIST         A semaphore identifier exists for key but both
                        (semflg&IPCCREAT) and (semflg&IPCEXCL) are 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                                                                 7/91





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