Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ mutex(2) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

mutex(2)                                                           mutex(2)

NAME
     mutex - ABI-Startadressen für den gegenseitigen Ausschluß

SYNTAX
     cc [flag ...] file ... -lmutex [library ...]

     #include <abimutex.h>

     void initlock(abilockt *lck)

     int acquirelock(abilockt *lck)

     void releaselock(abilockt *lck)

     int statlock(abilockt *lck)

BESCHREIBUNG
     Diese Funktionen stellen eine Schnittstelle zu Sperren mit gegenseiti-
     gem Ausschluß auf Benutzerebene zur Verfügung. Der Parameter lck muß
     auf einen Speicherbereich zeigen, der von allen Prozessen genutzt
     wird, die Eigner der Sperre werden oder die Sperre testen wollen.

     Die Struktur abilockt hat folgenden Inhalt:

        typedef struct {
            volatile unsigned long    abilock;
        } abilockt;

     Die Funktion initlock muß vor allen anderen Funktionen für eine
     Sperre aufgerufen werden. Sie initialisiert die Sperre so, daß diese
     einen ungesperrten Status hat.

     acquirelock versucht, Eigner der Sperre zu werden, auf die lck ver-
     weist. Die Funktion übergibt null, wenn sie Eigner der Sperre wurde,
     und andernfalls einen Wert ungleich null.

     statlock übergibt den aktuellen Status der Sperre, auf die lck ver-
     weist, ohne Eigner dieser Sperre zu werden. Die Funktion übergibt
     null, wenn die Sperre frei ist und andernfalls einen Wert ungleich
     null. releaselock hebt die Sperre, auf die lck zeigt, bedingungslos
     auf.

HINWEISE
     Sperren werden vom System niemals automatisch aufgehoben. Sperren, die
     einem Prozeß gehören, der stirbt, bleiben aktiv.

     Dem Benutzer obliegt die Rücknahme der Aktivierung, wenn acquirelock
     einen Fehler übergibt.

     Ein Aufruf von acquirelock kann fehlschlagen, selbst wenn aus dem von
     statlock übergebenen Status hervorgeht, daß die Sperre verfügbar ist.




Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

mutex(2)                                                           mutex(2)

     Der Inhalt der Sperre, auf die lck zeigt, darf niemals direkt geprüft
     werden.

     Auf dem System RM400-5 stehen diese Funktionen nur dem Superuser oder
     Benutzern mit der Berechtigung, Steuerung der Prozeßumschaltung zu
     verwenden, zur Verfügung [siehe pfenable(1M)]. Auf diesen Systemen
     müssen zusätzlich zur Ladeoption -lmutex auch die Optionen -lmproc und
     -lext angegeben werden.














































Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

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