ipcs(1) ipcs(1)
NAME
ipcs - Zustand von Interprozeß-Kommunikationseinrichtungen ausgeben
(inter-process communication status)
SYNTAX
ipcs [option ...]
BESCHREIBUNG
ipcs gibt Informationen über aktive Einrichtungen zur Interprozeß-
Kommunikation (IPC-Einrichtungen) aus. Durch die Angabe von Optionen
können Sie steuern,
- über welche Art von IPC-Einrichtungen Informationen ausgegeben wer-
den
- welche Informationen ausgegeben werden
Da sich die Zustände der IPC-Einrichtungen ändern können, während ipcs
läuft, ist die Information, die ipcs liefert, nur zum Zeitpunkt der
Abfrage aktuell.
OPTIONEN
Keine Option angegeben:
ipcs gibt in Kurzform Informationen aus über
- Nachrichtenwarteschlangen (message queues)
- gemeinsam benutzten Speicher (shared memory)
- Semaphore
die derzeit im System aktiv sind. Die Bedeutung der Ausgabespal-
ten ist im Abschnitt AUSGABE beschrieben.
Es gibt Optionen, um die Art der IPC-Einrichtung festzulegen, und
Optionen, um die Art der Informationen festzulegen.
Art der IPC-Einrichtung festlegen
-q (q - message queues) Informationen über aktive Nachrichtenwarte-
schlangen ausgeben.
-m (m - memory) Informationen über aktiven gemeinsam benutzten Spei-
cher (shared memory) ausgeben.
-s (s - semaphores) Informationen über aktive Semaphore ausgeben.
Ist eine der Optionen -q, -m oder -s gesetzt, so werden nur Informa-
tionen über die entsprechenden IPC-Einrichtung ausgegeben. Die Kombi-
nation der Optionen ist möglich. Ist keine der Optionen gesetzt, so
werden Informationen über alle Arten von IPC-Einrichtungen ausgegeben.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
ipcs(1) ipcs(1)
Art der Informationen festlegen
Im folgenden sind die Optionen beschrieben, die festlegen, welche
Informationen für die durch die Optionen -q, -m und -s festgelegten
IPC-Einrichtungen ausgegeben werden. Die Bedeutung der Ausgabespalten
ist im Abschnitt AUSGABE beschrieben.
-a (a - all) Alle Optionen, die die Art der ausgegebenen Informatio-
nen bestimmen, sind gesetzt. Dies ist die Kurzform für -b, -c,
-o, -p und -t.
-b (b - biggest) Es wird die maximal zulässige Größe der jeweiligen
IPC-Einrichtung ausgegeben:
Für Nachrichtenwarteschlangen die maximale Anzahl von Bytes in
einer Nachricht, die in diese Nachrichtenwarteschlange eingereiht
werden soll.
Für gemeinsam benutzten Speicher (shared memory) die Größe der
Speichersegmente.
Für Semaphore die Zahl der Semaphore in jeder Semaphor-Gruppe.
-c (c - creator) Die Benutzerkennung und der Gruppenname des Erzeu-
gers der IPC-Einrichtung werden ausgegeben.
-o (o - outstanding) Informationen über noch zu bearbeitende IPC-
Einrichtungen werden ausgegeben:
- Zahl der Nachrichten in Nachrichtenwarteschlangen
- Gesamtzahl der Bytes von Nachrichten in Nachrichtenwarte-
schlangen
- Anzahl von Prozessen, die einem gemeinsam benutzten Speicher-
segment zugeordnet sind.
-p (p - process) Es werden Informationen über Prozeßnummern ausgege-
ben:
- Prozeßnummer des letzten Prozesses, der eine Nachricht gesandt
hat
- Prozeßnummer des letzten Prozesses, der eine Nachricht empfan-
gen hat
- Prozeßnummer des Prozesses, der ein gemeinsam benutztes Spei-
chersegment erzeugt hat
- Prozeßnummer des letzten Prozesses, der ein gemeinsam benutz-
tes Speichersegment benutzt hat (attach, detach).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
ipcs(1) ipcs(1)
-t (t - time) Zeit-Informationen ausgeben. Es wird der Zeitpunkt der
letzten Änderung der Zugriffsrechte für alle IPC-Einrichtungen
ausgegeben.
Für Nachrichtenwarteschlangen wird der Zeitpunkt ausgegeben, zu
dem zuletzt die Systemaufrufe msgrcv(2) (Nachricht aus einer
Nachrichtenwarteschlange lesen) oder msgsnd(2) (Nachricht in eine
Nachrichtenwarteschlange eintragen) angewandt wurden.
Für gemeinsam benutzten Speicher wird der Zeitpunkt ausgegeben,
zu dem zuletzt die Systemaufrufe shmat(2) oder shmdt(2) angewandt
wurden.
Für Semaphore wird der Zeitpunkt ausgegeben, zu dem zuletzt der
Systemaufruf semop(2) auf ein Semaphor angewandt wurde.
Weitere mögliche Argumente
-C coredatei
Die Datei coredatei wird anstelle von /dev/kmem verwendet. Diese
Option kann nur von root bzw. einem Benutzer mit Zugriffsberech-
tigung für /dev/kmem benutzt werden.
-N namensliste
Die Datei namensliste wird anstelle von /stand/unix verwendet.
Diese Option kann nur von root bzw. einem Benutzer mit Zugriffs-
berechtigung für /dev/kmem benutzt werden.
-X (X - XENIX) Zusätzlich zu den Standard-Informationen der Inter-
prozeß-Kommunikationseinrichtungen werden noch Informationen über
die XENIX-Interprozeß-Kommunikationseinrichtungen angegeben.
Diese Informationen beschreiben eine zweite Menge von Semaphoren
und gemeinsam benutztem Speicher.
Die Option -p gibt jedoch keine Prozeßinformationen über den
gemeinsam benutzten Speicher in XENIX aus. Die Option -t gibt
keine Zeitinformationen über XENIX-Semaphore und gemeinsam
benutzten Speicher aus.
Wenn die Option -C oder -N gesetzt ist, wird die reale und effektive
Benutzer- und Gruppenkennung auf die reale Benutzer- und Gruppenken-
nung des Benutzers gesetzt, der ipcs aufgerufen hat.
AUSGABE
Im folgenden sind die Spaltenüberschriften und die Bedeutung der Spal-
ten in der Ausgabe eines ipcs-Aufrufs aufgeführt. Die in runden Klam-
mern (...) eingeschlossenen Buchstaben stehen dabei für die Optionen,
die die Ausgabe der entsprechenden Spaltenüberschrift zur Folge haben.
"alle" bedeutet, daß die betreffende Spaltenüberschrift in jedem Fall
ausgegeben wird.
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
ipcs(1) ipcs(1)
CBYTES (a, o)
Die Anzahl der Bytes in den Nachrichten, die in der zugehörigen
Nachrichtenwarteschlange auf ihre Bearbeitung warten.
CGROUP (a, c)
Der Name der Gruppe zu der der Erzeuger der IPC-Einrichtung
gehört.
CREATOR (a, c)
Die Benutzerkennung des Erzeugers der IPC-Einrichtung.
CTIME (a, t)
Der Zeitpunkt, zu dem der Eintrag für die zugehörige IPC-Einrich-
tung erstellt oder geändert wurde.
GROUP (alle)
Der Name der Gruppe zu der der Eigentümer der IPC-Einrichtung
gehört.
ID (alle)
Die Kennzahl der IPC-Einrichtung.
KEY (alle)
Der Schlüssel, der beim Erzeugen der IPC-Einrichtung mit
msgget(2) (Nachrichtenwarteschlange einrichten) oder semget(2)
(Semaphor-Menge anlegen) als Argument benutzt wurde.
LRPID (a, p)
Die Prozeß-Nummer des Prozesses, der zuletzt eine Nachricht aus
der zugehörigen Nachrichtenwarteschlange empfangen hat.
LSPID (a, p)
Die Prozeß-Nummer des Prozesses, der zuletzt eine Nachricht an
die zugehörige Nachrichtenwarteschlange geschickt hat.
MODE (alle)
Die Zugriffsmodi und Statusanzeigen für die IPC-Einrichtung. Der
Modus besteht aus 11 Zeichen, die folgende Bedeutung haben:
Das erste Zeichen kann sein:
S Wenn ein Prozeß auf ein msgsnd(2) wartet.
D Wenn das betreffende gemeinsam benutzte Speichersegment frei-
gegeben wurde. Es verschwindet, wenn es vom letzten Prozeß,
der dem Segment zugeordnet ist, freigegeben wird.
- Wenn kein Prozeß auf ein msgsnd(2) wartet.
Das zweite Zeichen kann sein:
R Wenn ein Prozeß auf ein msgrcv(2) wartet.
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
ipcs(1) ipcs(1)
C Das betreffende gemeinsam benutzte Speichersegment wird berei-
nigt, wenn der erste Zugriff (attach) ausgeführt wird.
- Wenn kein Prozeß auf ein msgrcv(2) wartet.
Die folgenden 9 Zeichen werden in drei Gruppen zu je drei Bits
unterteilt:
Die erste Gruppe steht für die Zugriffsrechte des Eigentümers der
IPC-Einrichtung.
Die zweite steht für die Zugriffsrechte der Benutzer, die zur
selben Benutzer-Gruppe wie der Eigentümer der IPC-Einrichtung
gehören.
Die dritte Gruppe steht für die Zugriffsrechte aller anderen
Benutzer.
In jeder Gruppe steht das erste Zeichen für das Leserecht, das
zweite Zeichen für das Schreibrecht bzw. für das Recht, den Ein-
trag für die IPC-Einrichtung zu ändern. Das dritte Zeichen in
jeder Gruppe wird zur Zeit noch nicht benutzt.
Die Zugriffsrechte werden folgendermaßen angegeben:
r Leserecht ist vorhanden.
w Schreibrecht ist vorhanden.
a Recht, den Eintrag für die IPC-Einrichtung zu ändern, ist vor-
handen.
- Das betreffende Recht ist nicht vorhanden.
NSEMS (a, b)
Die Zahl der Semaphore in der zugehörigen Semaphor-Menge.
OTIME (a, t)
Der Zeitpunkt, zu dem die letzte Semaphor-Operation auf die zuge-
hörige Semaphor-Menge angewandt wurde.
OWNER (alle)
Die Benutzerkennung des Eigentümers der IPC-Einrichtung.
QBYTES (a, b)
Die Anzahl der Bytes, die diejenigen Nachrichten maximal enthal-
ten dürfen, die in der Nachrichtenwarteschlange auf ihre Bearbei-
tung warten.
QNUM (a, o)
Die Anzahl der Nachrichten, die momentan in der zugehörigen Nach-
richtenwarteschlange enthalten sind.
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
ipcs(1) ipcs(1)
RTIME (a, t)
Der Zeitpunkt, zu dem die letzte Nachricht aus der zugehörigen
Nachrichtenwarteschlange empfangen wurde.
STIME (a, t)
Der Zeitpunkt, zu dem die letzte Nachricht an die zugehörige
Nachrichtenwarteschlange geschickt wurde.
NATTCH (a, o)
Die Anzahl der Prozesse, die dem betreffenden gemeinsam benutzten
Speichersegment zugeordnet sind.
SEGSZ (a, b)
Die Größe des betreffenden gemeinsam benutzten Speichersegments.
CPID (a, p)
Die Nummer des Prozesses, der das gemeinsam benutzte Speicherseg-
ment angelegt hat.
LPID (a, p)
Die Nummer des letzten Prozesses, der ein gemeinsam benutztes
Speichersegment benutzt hat (attach, detach).
ATIME (a, t)
Der Zeitpunkt, zu dem der letzte Zugriff (attach) auf das betref-
fende gemeinsam benutzte Speichersegment beendet war.
DTIME (a, t)
Der Zeitpunkt, zu dem die letzte Freigabe (detach) eines gemein-
sam benutzten Speichersegment beendet war.
T (alle)
Typ der IPC-Einrichtung:
q Steht für Nachrichtenwarteschlange.
m Steht für gemeinsam benutzten Speicher (shared memory).
s Steht für Semaphor.
BEISPIELE
Das Programm server richtet eine Nachrichtenwarteschlange ein. Sie
starten dieses Programm im Hintergrund und fragen dann mit ipcs den
Zustand von Einrichtungen zur Interprozeß-Kommunikation ab:
$ server &
$ ipcs
IPC status from /dev/kmem as of Tue Jun 6 13:35:55 1989
T ID KEY MODE OWNER GROUP
Message Queues:
q 40 0x0000004b -Rrw-rw-rw- michael qm234
Semaphores:
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98
ipcs(1) ipcs(1)
DATEIEN
/stand/unix
System-Namensliste
/dev/kmem
Datei, die ein Abbild des virtuellen Speichers des Betriebssy-
stemkerns Rechners darstellt.
/etc/passwd
Die Datei /etc/passwd enthält alle eingerichteten Benutzerkennun-
gen.
/etc/group
Die Datei /etc/group enthält alle eingerichteten Benutzergruppen.
SIEHE AUCH
ipcrm(1), msgctl(2), msgget(2), msgop(2), semctl(2), semget(2),
semop(2), shmctl(2), shmop(2).
Seite 7 Reliant UNIX 5.44 Gedruckt 11/98