Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ semget(2) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

semctl(2)

semop(2)

stdipc(3C)

semget(2)                                                         semget(2)

NAME
     semget - Semaphor-Kennung bestimmen

SYNTAX
     #include <sys/sem.h>

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

BESCHREIBUNG
     semget() gibt die zu key gehörende Semaphor-Kennung zurück.

     Eine Semaphor-Kennung und die zugehörige Datenstruktur sowie die Menge
     mit nsems Semaphoren werden für key erstellt, wenn einer der nachste-
     henden Punkte wahr ist:

     -  key ist gleich IPCPRIVATE.

     -  key wurde nicht bereits eine Semaphor-Kennung zugeordnet, und
        (semflg&IPCCREAT) ist wahr.

     Bei Erstellung wird die zur neuen Semaphor-Kennung gehörende Daten-
     struktur wie folgt initialisiert:

     -  semperm.cuid, semperm.uid, semperm.cgid und semperm.gid werden
        auf die effektive Benutzernummer bzw. die effektive Gruppennummer
        des aufrufenden Prozesses gesetzt.

     -  Die Zugriffsberechtigungsbits von semperm.mode werden auf
        Zugriffsberechtigungsbits von semflg gesetzt.

     -  semnsems wird auf den Wert von sems gesetzt.

     -  semotime wird auf 0 und semctime auf die aktuelle Zeit gesetzt.

     semget() ist erfolglos, wenn einer oder mehrere der folgenden Punkte
     zutreffen:

     EINVAL    sems ist entweder kleiner oder gleich Null oder größer als
               der systembedingte Grenzwert.

     EACCES    Eine Semaphor-Kennung ist für key vorhanden, jedoch würde
               die Zugriffserlaubnis, wie sie von den niederwertigen 9 Bits
               von semflg angegeben ist, nicht erteilt werden.

     EINVAL    Eine Semaphor-Kennung ist für key vorhanden, jedoch ist die
               Anzahl der Semaphoren in der zugeordneten Semaphor-Menge
               kleiner als sems, und sems ist nicht gleich Null.

     ENOENT    Eine Semaphor-Kennung ist für key nicht vorhanden, und
               (semflg&IPCCREAT) ist unwahr.

     ENOSPC    Eine Semaphor-Kennung soll erstellt werden, jedoch würde der



Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

semget(2)                                                         semget(2)

               systembedingte Grenzwert für die Höchstzahl zulässiger Sema-
               phoren im Gesamtsystem überschritten werden.

     EEXIST    Eine Semaphor-Kennung ist für key vorhanden, jedoch sind
               (semflg&IPCCREAT) und (semflg&IPCEXCL) wahr.

ERGEBNIS
     Nach erfolgreicher Beendigung wird eine nichtnegative ganze Zahl, eine
     Semaphor-Kennung, zurückgegeben. Andernfalls wird -1 zurückgegeben,
     und errno wird zur Anzeige des Fehlers gesetzt.

HINWEISE
     Es kann in Zukunft Änderungen bei den Schnittstellen für Interprozeß-
     Kommunikation geben. Sie sollten daher Ihre Anwendungen so gestalten,
     daß in Modulen, die semget() verwenden, diese Funktion später leicht
     durch eine andere ersetzt werden kann.

SIEHE AUCH
     semctl(2), semop(2), stdipc(3C).



































Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

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