ps(1) ps(1)
NAME
ps - Prozeßdaten abfragen (process status)
SYNTAX
ps [-aAdeflcjx] [-g grplist] [-G grplist] [-o format] [-p proclist]
[-t termlist] [-u uidlist] [-U uidlist] [-s sesslist]
BESCHREIBUNG
ps gibt Informationen über Prozesse aus. Dabei wird eine Momentauf-
nahme über den Zustand des Systems bzw. der Prozesse ausgegeben, der
nach dem Bruchteil einer Sekunde schon wieder überholt sein kann und
daher zum Zeitpunkt der Ausgabe nicht mehr den wahren Zustand wider-
spiegelt.
OPTIONEN
Keine Option angegeben:
ps gibt Informationen über Prozesse aus, die mit dem kontrollie-
renden Terminal verbunden sind und deren effektive Benutzer-ID
der Benutzer-ID des Aufrufers entspricht. Die Ausgabe besteht aus
einer kurzen Auflistung
- der Prozeßnummer (PID)
- der Nummer des Terminals (TTY)
- der gesamten Ausführzeit (TIME)
- des Kommandonamens (CMD)
Die Bedeutung der Ausgabespalten ist im Abschnitt AUSGABE genauer
erläutert.
-a Es werden Informationen über die mit einem Terminal verbundenen
Prozesse ausgegeben, wobei jedoch Prozeßgruppenführer nicht
berücksichtigt werden.
-A Es werden Informationen über alle Prozesse ausgegeben. Gleichbe-
deutend mit -e.
-c Es werden zusätzlich Informationen über die Klasse und die Prio-
rität der Prozesse ausgegeben [vgl. priocntl(1)].
-d Neben Informationen über die mit einem Terminal verbundenen Pro-
zesse, werden auch Informationen über Prozesse ausgegeben, die
nicht mit einem Terminal verbunden sind. Prozeßgruppenführer wer-
den jedoch nicht berücksichtigt.
-e Es werden Informationen über alle Prozesse ausgegeben. Gleichbe-
deutend mit -A.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
-f (f - full list) Der Umfang an Informationen zu den einzelnen Pro-
zessen wird erweitert. Welche Ausgabespalten zur Ausgabe der
Option -f gehören, ist im Abschnitt AUSGABE näher erläutert.
Ist -f angegeben, so gibt ps den Kommandonamen und seine Argu-
mente aus. Die Argumente eines Prozesses werden jedoch nur ange-
zeigt, wenn der Prozeß demjenigen gehört, der ps aufgerufen hat
bzw. wenn ps von root aufgerufen wird.
Enthält der Kommandoname eines Prozesses nichtdruckbare Zeichen,
so wird der Kommandoname in eckige Klammern [ ] eingeschlossen.
Wird die Option -f ohne weitere Optionen angegeben, so beziehen
sich die Informationen auf Prozesse, die mit dem kontrollierenden
Terminal verbunden sind.
-g grplist
Es werden nur Informationen über Prozesse ausgegeben, deren Pro-
zeßgruppenführer in grplist angegeben werden.
grplist
grplist ist eine Liste der Prozeßnummern von Prozeßgruppen-
führern. grplist hat folgendes Format: Die Nummern werden
durch ein Komma getrennt, oder die Liste wird in Anführungs-
zeichen eingeschlossen "...", wobei die Nummern dann durch
Komma und/oder Leerzeichen getrennt werden können.
-G grplist
wie -g mit Angabe der realen Gruppen-ID.
-j Es werden zusätzlich die Kennummer der Sitzung und Kennummer der
Prozeßgruppe ausgegeben.
-l (l - long list) Es werden umfassende Informationen zu den einzel-
nen Prozessen ausgegeben. Welche Ausgabespalten zur Ausgabe der
Option -l gehören, ist im Abschnitt AUSGABE näher erläutert. Wird
die Option -l ohne weitere Optionen angegeben, so beziehen sich
die Informationen auf Prozesse, die mit dem kontrollierenden Ter-
minal verbunden sind. Bei 64-Bit-Systemen kann die Option
-x angegeben werden (siehe dort).
-o format
(o - output) Legt das Ausgabeformat fest. Sie können mehrere
Optionen -o angeben. Die spezifizierten Formate werden dann nach-
einander ausgegeben.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
format
format ist eine Liste von Variablen und eventuell deren
Überschriften für die einzelnen Ausgabespalten (siehe AUS-
GABE). format hat folgendes Format: Die Variablen werden
durch ein Komma getrennt, oder format wird in Anführungszei-
chen eingeschlossen "...", wobei die Variablen dann durch
Komma und/oder Leerzeichen getrennt werden können. Ein neuer
Überschriftentext muß immer am Ende der Liste stehen. Wei-
tere Variablen geben Sie dann in einer weiteren Option -o
an.
-p proclist
Es werden nur Informationen zu Prozessen ausgegeben, deren Pro-
zeßnummern in proclist angegeben sind.
proclist
proclist ist eine Liste von Prozeßnummern.
Die Nummern werden durch ein Komma getrennt, oder die Liste
wird in Anführungszeichen eingeschlossen "...", wobei die
Nummern dann durch Komma und/oder Leerzeichen getrennt wer-
den können.
-s sesslist
Es werden nur Informationen über Prozesse ausgegeben, die zu
einer in sesslist angegeben Sitzung gehören.
sesslist
sesslist ist eine Liste von Sitzungskennummern. sesslist hat
folgendes Format: Die Nummern werden durch ein Komma
getrennt, oder die Liste wird in Anführungszeichen einge-
schlossen "...", wobei die Nummern dann durch Komma und/oder
Leerzeichen getrennt werden können.
-t termlist
Es werden nur Informationen über Prozesse ausgegeben, die mit den
in termlist genannten Terminals verbunden sind.
termlist
termlist ist eine Liste von Terminals. Die Terminals können
auf zwei Arten angegeben werden: entweder mit ihrem Geräte-
namen (z. B. term/tty004) oder, falls der Gerätename aus
einer Zusammensetzung mit tty besteht, nur mit der Nummer
(z. B. 004).
Die Angaben zu den Terminals werden durch ein Komma
getrennt, oder die Liste wird in Anführungszeichen einge-
schlossen "...", wobei die Einträge dann durch Komma
und/oder Leerzeichen getrennt werden können.
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
-u uidlist
Es werden nur Informationen über Prozesse ausgegeben, deren Pro-
zeßeigentümer in uidlist angegeben ist.
uidlist
uidlist ist eine Liste von Benutzernummern bzw. Benutzerken-
nungen.
Die Angaben in uidlist werden durch ein Komma getrennt, oder
die Liste wird in Anführungszeichen eingeschlossen "...",
wobei die Einträge dann durch Komma und/oder Leerzeichen
getrennt werden können.
-U uidlist
wie -u mit Angabe der realen Benutzer-ID.
-x Diese Option ist nur bei 64-Bit-Systemen wirksam. Die Felder ADDR
und WCHAN werden in einer Länge von 64 Bit dargestellt. Die
Option ist nur wirksam, wenn auch -l gesetzt ist.
AUSGABE
Standardausgabeformat
Im folgenden werden die Überschriften und die Bedeutung der Spalten im
Standardausgabeformat von ps erläutert. Die Buchstaben in Klammern
bezeichnen die Option, bei der die entsprechende Spalte in der Ausgabe
erscheint. Die Angabe "alle" bedeutet, daß die Spalte bei allen Optio-
nen erscheint. Beachten Sie bitte, daß Sie mit den Optionen -c, -j, -f
und -l nur bestimmen, welche Informationen Sie zu einem Prozeß erhal-
ten, nicht aber zu welchem Prozeß.
F (l) Flags des Prozesses (hexadezimal und additiv). Die Flags
sind maschinenabhängig und werden deshalb hier nicht ange-
geben.
S (l) Status des Prozesses.
0 Prozeß wird gerade ausgeführt
S Sleeping: Prozeß schläft, wartet auf ein Ereignis
R Runnable: Prozeß ist ablaufbereit
I Idle: Prozeß ist im Entstehen
Z Zombie-Status: Prozeß ist beendet, der Endestatus wurde
aber vom Vaterprozeß noch nicht durch einen wait(2)-
Systemaufruf abgefragt
T Traced: Ein überwachter Prozeß ist gestoppt
X SXBRK-Status: Prozeß wartet auf mehr Speicherplatz
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
UID (f, l) (UID - user ID) Benutzernummer des Prozeßeigentümers. Wenn
die Option -f gesetzt ist, wird statt der UID die Benut-
zerkennung ausgegeben.
Es werden nur die ersten 7 Zeichen der Benutzerkennung
ausgegeben.
PID (alle) (PID - process ID) Prozeßnummer. Jeder Prozeß erhält zum
Zeitpunkt seiner Erzeugung eine eindeutige Prozeßnummer.
Unter dieser Nummer kann z. B. der Prozeß mit kill beendet
werden.
PPID (f, l) (PPID - parent process ID) Prozeßnummer des Vaterprozes-
ses.
PGID (j) (PGID - process group ID) Kennummer der Prozeßgruppe.
SID (j) (SID - session ID) Kennummer der Sitzung.
C (f, l) Prozessorauslastung für das Scheduling.
CLS (c) Scheduling-Gruppe (Prozesse, die im Zeitscheibenverfahren
verarbeitet werden).
PRI (l, c) Prioritätswert des Prozesses. Höhere Zahlen bedeuten nor-
malerweise niedrigere Priorität. Wurde jedoch -c angege-
ben, so bedeuten höhere Zahlen höhere Priorität.
NI (l) Wert, mit dem die Prozeßpriorität verändert wurde (siehe
nice). Nur Prozesse der Klasse time-sharing haben einen
solchen Wert.
ADDR (l) Adresse (physische Seiten-Frame-Nummer) des Benutzerbe-
reichs, falls resident, andernfalls die Plattenadresse des
ausgelagerten Prozesses.
SZ (l) Die Größe des Speicherabbildes (core-image) des Prozesses
in Blocks.
WCHAN (l) Adresse des Ereignisses, auf das der Prozeß wartet. Wenn
die Spalte leer ist, läuft der Prozeß.
STIME (f) Startzeit des Prozesses. Innerhalb der ersten 24 Stunden
wird die Uhrzeit ausgegeben, danach das Datum.
TTY (alle) Das kontrollierende Terminal des Prozesses. Falls der Pro-
zeß nicht von einem Terminal kontrolliert wird, wird ein
Fragezeichen ? ausgegeben.
TIME (alle) Gesamte Ausführungszeit des Prozesses in Minuten und
Sekunden.
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
CMD (alle) Der Name des Kommandos. Wenn die Option -f gesetzt ist,
wird der vollständige Kommandoname mit seinen Argumenten
ausgegeben.
Prozesse, die bereits beendet sind, deren Endestatus aber
von von ihrem Vaterprozeß noch nicht durch einen wait(2)-
Systemaufruf abgefragt wurde, werden als <defunct> gekenn-
zeichnet.
Wenn termlist, proclist, uidlist oder grplist nicht angegeben wurde,
überprüft ps die Standardein-/ausgabe sowie die Standardfehlerausgabe
in dieser Reihenfolge, um das kontrollierende Terminal zu ermitteln.
Es werden dann Informationen zu allen Prozessen ausgegeben, die von
diesem Terminal kontrolliert werden. Falls diese drei Kanäle umgelei-
tet wurden, findet ps kein kontrollierendes Terminal und gibt daher
auch keine Information aus.
Benutzerdefiniertes Ausgabeformat
Mit Hilfe der Option -o können Sie Ihr eigenes Ausgabeformat zusammen-
stellen. Jede Spalte des Ausgabeformats wird dabei durch eine der
unten genannten Variablen repräsentiert.
Die standardmäßig zugeordnete Überschrift können Sie ändern, indem Sie
nach der Variable ein Gleichheitszeichen und anschließend den neuen
Text für die Überschrift angeben.
Beispiel: -o user=Benutzername
Ein neuer Überschriftentext muß dabei immer am Ende der Variablenliste
stehen. Weitere Variablen können Sie dann in einer weiteren Option -o
angeben.
Die mit der Option -o definierten Felder werden in der angegebenen
Reihenfolge ausgegeben. Die Feldlängen sind dabei mindestens so lang,
wie der definierte Überschriftentext. Ist der neue Überschriftentext
leer (z. B. -o user=), entspricht die Feldlänge mindestens der Stan-
dardüberschrift. Sind alle Überschriftentexte leer, wird keine Über-
schriftenzeile ausgegeben.
ruser Reale Benutzernummer des Prozeßeigentümers. Falls möglich wird
statt der UID die Benutzerkennung ausgegeben.
Standardüberschrift: RUSER
user Effektive Benutzernummer des Prozeßeigentümers. Falls möglich
wird statt der UID die Benutzerkennung ausgegeben.
Standardüberschrift: USER
rgroup
Reale ID der Prozeßgruppe. Falls möglich wird statt der GID der
Gruppenname ausgegeben.
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
Standardüberschrift: RGROUP
group Effektive ID der Prozeßgruppe. Falls möglich wird statt der GID
der Gruppenname ausgegeben.
Standardüberschrift: GROUP
pid Prozeßnummer (dezimal).
Standardüberschrift: PID
ppid Prozeßnummer des Vaterprozesses (dezimal).
Standardüberschrift: PPID
pgid Kennummer der Prozeßgruppe (dezimal).
Standardüberschrift: PGID
pcpu Verhältnis der bereits benutzten zur verfügbaren CPU-Zeit, ange-
geben in Prozent.
Standardüberschrift: %CPU
vsz Größe des Prozesses im virtuellen Speicher in Kbyte.
Standardüberschrift: VSZ
nice Prioritätswert des Prozesses (dezimal) [vgl. nice(1)].
Standardüberschrift: NI
etime Zeit, die seit dem Start des Prozesses vergangen ist. Die Zeit
wird in folgendem Format angegeben:
[[dd-]hh:]mm:ss
Dabei bedeutet dd die Anzahl der Tage, hh die Anzahl der Stun-
den, mm die Anzahl der Minuten und ss die Anzahl der Sekunden.
Standardüberschrift: ELAPSED
time CPU-Zeit, die seit dem Start des Prozesses vergangen ist. Die
Zeit wird in folgendem Format angegeben:
[dd-]hh:mm:ss
Dabei bedeutet dd die Anzahl der Tage, hh die Anzahl der Stun-
den, mm die Anzahl der Minuten und ss die Anzahl der Sekunden.
Standardüberschrift: TIME
Seite 7 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
tty Terminal, das den Prozeß kontrolliert.
Standardüberschrift: TT
comm Name des ausgeführten Kommandos.
Standardüberschrift: COMMAND
args Name des ausgeführten Kommandos mit allen Argumenten. Die Argu-
mentliste kann aus Platzgründen abgeschnitten werden.
Standardüberschrift: COMMAND
BEISPIELE
Durch einen Aufruf von ps mit der Option -l wird eine ausführliche
Liste über alle laufenden Prozesse auf dem kontrollierenden Terminal
ausgegeben:
$ ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
10 S 110 1455 1453 0 30 20 c0fec9d8 23 d114f200 tty004 0:02 sh
10 O 110 1862 1455 12 50 20 c0fec870 60 tty004 0:00 ps
18 S 110 1858 1455 10 20 20 c0fecaf8 55 d115f280 tty004 1:03 find
Seite 8 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
Jetzt soll das find-Kommando durch einen Aufruf von kill mit Angabe
der in der Spalte PID angezeigten Prozeßnummer abgebrochen werden. Ein
erneuter Aufruf von ps zeigt anschließend, daß der betreffende Prozeß
nicht mehr existiert.
$ kill 1858
$ ps
PID TTY TIME COMD
1455 tty004 0:02 sh
1873 tty004 0:00 ps
1858 Terminated
INTERNATIONALE UMGEBUNG
Die Umgebungsvariable LCMESSAGES bestimmt die Sprache der Meldungs-
texte.
LCTIME bestimmt das Format der Zeitangaben bei Verwendung der Option
-f.
LCCOLLATE beeinflußt die Sortierreihenfolge.
Wenn LCMESSAGES, LCTIME oder LCCOLLATE nicht oder als leere Zei-
chenkette definiert ist, wird der Wert von LANG als Standardwert für
die jeweils nicht gesetzte oder leere Variable herangezogen. Ist auch
LANG nicht oder als leere Zeichenkette definiert, verhält sich das
System so, als wäre es nicht internationalisiert.
Die Umgebungsvariable LCALL bestimmt die gesamte internationale Umge-
bung. LCALL hat Vorrang vor allen anderen Umgebungsvariablen im
Bereich der Internationalisierung.
Hat eine der Variablen für die internationale Umgebung einen ungülti-
gen Wert, verhält sich das System so, als wäre keine Variable gesetzt.
HINWEISE
Wenn ein sehr E/A-intensiver Prozeß läuft, kann es vorkommen, daß er
von ps nicht erkannt wird, da die dazugehörigen Daten gesperrt sind.
Seite 9 Reliant UNIX 5.44 Gedruckt 11/98
ps(1) ps(1)
DATEIEN
/dev/sxt/*
Gerätedateien für virtuelle tty-Geräte
/dev/term/tty*
Gerätedateien der Terminalschnittstellen
/dev/xt/*
Gerätedateien für Multiplexbetrieb
/etc/passwd
Informationen über Benutzerkennungen
/etc/psdata
enthält interne Datenstrukturen
/proc
Prozeßdateisystem
SIEHE AUCH
kill(1), nice(1), priocntl(1), renice(1), sh(1), getty(1M).
Seite 10 Reliant UNIX 5.44 Gedruckt 11/98