/proc/pid/stat - Statusinformationen
- /proc/PID/stat
- Statusinformationen des Prozesses. Wird von ps(1) benutzt. Sie
werden in der Kernelquelldatei fs/proc/array.c definiert.
- Die Felder werden in dieser Reihenfolge mit ihrem passenden
scanf(3)-Formatkennzeichnern unten aufgeführt. Ob bestimmte
dieser Felder gültige Informationen anzeigen, wird von einer
Ptrace-Zugriffsmodusprüfung PTRACE_MODE_READ_FSCREDS |
PTRACE_MODE_NOAUDIT gesteuert (siehe ptrace(2)). Falls die
Prüfung den Zugriff verweigert, wird der Feldwert mit 0 angegeben.
Die betroffenen Felder werden mit der Markierung [PT] gekennzeichnet.
- (1) pid %d
-
Die Prozesskennung.
- (2) comm %s
- Der Name der ausführbaren Datei, in Klammern. Zeichenketten
länger als TASK_COMM_LEN (16) Zeichen (einschließlich
des abschließenden Nullbytes) werden ohne Rückmeldung
abgeschnitten. Dies wird angezeigt, unabhängig davon, ob das
Programm ausgelagert ist oder nicht.
- (3) state %c
- Eines der folgenden Zeichen zur Angabe des Prozesszustandes:
- R
- Laufend
- S
- Schlafend in einem unterbrechbaren Wartezustand
- D
- Wartend in einem nicht unterbrechbaren Plattenschlaf
- Z
- Zombie
- T
- Gestoppt (aufgrund eines Signals) oder (vor Linux 2.6.33) Verfolgung
gestoppt
- t
- Verfolgung gestoppt (seit Linux 2.6.33)
- W
- Paging (nur vor Linux 2.6.0)
- X
- Getötet (seit Linux 2.6.0)
- x
- Getötet (nur Linux 2.6.33 bis 3.13)
- K
- Wakekill (nur Linux 2.6.33 bis 3.13)
- W
- Aufwachend (nur Linux 2.6.33 bis 3.13)
- P
- Geparkt (nur Linux 3.9 bis 3.13)
- I
- Leerlauf (Linux 4.14 und neuer)
- (4) ppid %d
- Die Prozesskennung (PID) des Elternprozesses dieses Prozesses.
- (5) pgrp %d
- Die Prozess-Gruppenkennung des Prozesses.
- (6) session %d
- Die Sitzungskennung des Prozesses.
- (7) tty_nr %d
- Das steuernde Terminal des Prozesses. (Die Minor-Gerätenummer ist
in der Kombination der Bits 31 bis 20 und 7 bis 0 enthalten; die
Major-Gerätenummer befindet sich in den Bits 15 bis 8.)
- (8) tpgid %d
- Die Kennung der Vordergrund-Prozessgruppe des steuernden Terminals des
Prozesses.
- (9) flags %u
- Das Wort mit den Kernel-Schaltern des Prozesses. Die Bedeutung der Bits
finden Sie in den PF_*-#define-Anweisungen in der Linux-Quellcodedatei
<linux/sched.h>. Die Details hängen von der
Kernel-Version ab.
- Das Format dieses Feldes war %lu vor Linux 2.6.
- (10) minflt %lu
- Die Anzahl geringfügiger Ausnahmebehandlungen des Prozesses, die
kein Nachladen einer Speicherseite von Platte erforderlich gemacht
haben.
- (11) cminflt %lu
- Die Anzahl geringfügiger Ausnahmebehandlungen der Kindprozesse des
Prozesses, auf die der Prozess wartete.
- (12) majflt %lu
- Die Anzahl wesentlicher Ausnahmebehandlungen des Prozesses, die das
Nachladen einer Speicherseite von der Platte erforderten.
- (13) cmajflt %lu
- Die Anzahl wesentlicher Ausnahmebehandlungen der Kindprozesse des
Prozesses, auf die der Prozess wartete.
- (14) utime %lu
- Gesamtzeit, die dieser Prozess im Benutzermodus verbracht hat, gemessen in
Uhren-Ticks (dividieren Sie durch sysconf(_SC_CLK_TCK)). Das
umfasst Gastzeit, guest_time (aufgewendete Zeit für den
Betrieb einer virtuellen CPU, siehe unten), so dass Anwendungen, die das
Gastzeit-Feld nicht kennen, diese Zeit in ihren Berechnungen nicht
außer acht lassen.
- (15) stime %lu
- Gesamtzeit, die dieser Prozess im Kernel-Modus verbracht hat, gemessen in
Uhren-Ticks (dividieren Sie durch sysconf(_SC_CLK_TCK)).
- (16) cutime %ld
- Gesamtzeit, die abgewartete Kindprozesse im Benutzermodus verbracht haben,
gemessen in Uhren-Ticks (dividieren Sie durch sysconf(_SC_CLK_TCK))
(siehe auch times(2)). Das umfasst Gastzeit, guest_time
(Laufzeit in einer virtuellen CPU, siehe unten).
- (17) cstime %ld
- Gesamtzeit, die abgewartete Kindprozesse im Kernel-Modus verbracht haben,
gemessen in Uhren-Ticks (dividieren Sie durch
sysconf(_SC_CLK_TCK)).
- (18) priority %ld
- (Erklärung für Linux 2.6) Für Prozesse, die im
Scheduling eine Echtzeit-Strategie verfolgen (policy weiter unten,
siehe sched_setscheduler(2)), ist dies die negierte
Scheduling-Priorität minus eins, das heißt, eine Zahl im
Bereich von -2 bis -100, entsprechend den Echtzeitprioritäten 1 bis
99. Für Prozesse, deren Scheduling keine Echtzeit-Strategie
verfolgt, ist dies der rohe Nice-Wert (setpriority(2)), wie er im
Kernel dargestellt ist. Der Kernel speichert Nice-Werte als Zahlen im
Bereich 0 (hoch) bis 39 (niedrig), entsprechend des für den
Benutzer sichtbaren Nice-Bereichs von -20 bis 19.
- Vor Linux 2.6 war dies ein skalierter Wert auf Grundlage des vom Scheduler
an den Prozess zugewiesenen Gewichts.
- (19) nice %ld
- Der Nice-Wert (siehe setpriority(2)), ein Wert im Bereich von 19
(niedrige Priorität) bis -20 (hohe Priorität).
- (20) num_threads %ld
- Anzahl von Threads in diesem Prozess (seit Linux 2.6). Vor Linux 2.6 war
dieses Feld mit dem Wert 0 als Platzhalter für ein früher
entferntes Feld hartkodiert.
- (21) itrealvalue %ld
- Die Zeit (in Jiffies), bevor dem Prozess aufgrund eines Intervall-Timers
ein SIGALRM gesendet wird. Seit Linux 2.6.17 wird dieses Feld nicht
mehr gewartet und wird mit 0 hartkodiert.
- (22) starttime %llu
- Die Zeit, zu der der Prozess nach dem Systemstart gestartet wurde. In
Linux vor 2.6 wurde dieser Wert in Jiffies ausgegeben. Seit Linux 2.6 wird
der Wert in Uhren-Ticks ausgedrückt (teilen Sie diese durch
sysconf(_SC_CLK_TCK)).
- Das Format dieses Feldes war %lu vor Linux 2.6.
- (23) vsize %lu
- Größe des virtuellen Speichers in Bytes.
- (24) rss %ld
- Resident Set Size: Anzahl der Seiten, die der Prozess tatsächlich
im Speicher hat. Dabei zählen nur die Seiten von Text, Daten und
Stack. Nicht abgerufene oder ausgelagerte Bereiche zählen nicht
mit. Dieser Wert ist ungenau, siehe /proc/PID/statm weiter
unten.
- (25) rsslim %lu
- Aktuelle weiche Grenze für die RSS des Prozesses; siehe die
Beschreibung von RLIMIT_RSS in getrlimit(2).
- (26) startcode %lu [PT]
- Die Adresse, oberhalb derer Programmtext ausgeführt werden
kann.
- (27) endcode %lu [PT]
- Die Adresse, unterhalb derer Programmtext ausgeführt werden
kann.
- (28) startstack %lu [PT]
- Die Startadresse des Stacks (also der »Boden«).
- (29) kstkesp %lu [PT]
- Derzeitiger Wert von ESP (Stack Pointer), wie er in der Kernel-Stack-Seite
für diesen Prozess steht.
- (30) kstkeip %lu [PT]
- Der aktuelle EIP (Instruction Pointer, Anweisungszeiger).
- (31) signal %lu
- Die Bitmap anstehender Signale, angezeigt als Dezimalzahl. Obsolet, weil
sie keine Informationen über Echtzeitsignale gibt; verwenden Sie
stattdessen /proc/PID/status.
- (32) blocked %lu
- Die Bitmap blockierter Signale, angezeigt als Dezimalzahl. Obsolet, weil
sie keine Informationen über Echtzeitsignale gibt; verwenden Sie
stattdessen /proc/PID/status.
- (33) sigignore %lu
- Die Bitmap ignorierter Signale, angezeigt als Dezimalzahl. Obsolet, weil
sie keine Informationen über Echtzeitsignale gibt; verwenden Sie
stattdessen /proc/PID/status.
- (34) sigcatch %lu
- Die Bitmap abgefangener Signale, angezeigt als Dezimalzahl. Obsolet, weil
sie keine Informationen über Echtzeitsignale gibt; verwenden Sie
stattdessen /proc/PID/status.
- (35) wchan %lu [PT]
- Dies ist der »Kanal«, in dem der Prozess wartet. Es ist die
Adresse des Orts im Kernel, an dem der Prozess schläft. Der
entsprechende symbolische Name kann in /proc/PID/wchan
gefunden werden.
- (36) nswap %lu
- Anzahl ausgelagerter Seiten (nicht gewartet).
- (37) cnswap %lu
- Aufaddiertes nswap der Kindprozesse (nicht gewartet).
- (38) exit_signal %d (seit Linux 2.1.22)
- Das an den Elternprozess zu sendende Signal, wenn wir sterben.
- (39) processor %d (seit Linux 2.2.8)
- Nummer der CPU, auf der der Prozess zuletzt lief.
- (40) rt_priority %u (seit Linux 2.5.19)
- Priorität für das Echtzeit-Scheduling, eine Zahl im Bereich
von 1 bis 99 für Prozesse, deren Scheduling einer
Echtzeit-Strategie folgt oder 0 für andere Prozesse (siehe
sched_setscheduler(2)).
- (41) policy %u (seit Linux 2.5.19)
- Scheduling-Regeln (siehe sched_setscheduler(2)). Dekodieren Sie sie
mit den SCHED_*-Konstanten in linux/sched.h.
- Das Format dieses Feldes war %lu vor Linux 2.6.22.
- (42) delayacct_blkio_ticks %llu (seit Linux
2.6.18)
- Kumulierte Block-E/A-Verzögerungen, gemessen in Uhren-Ticks
(Hundertstelsekunden).
- (43) guest_time %lu (seit Linux 2.6.24)
- Gastzeit des Prozesses (aufgewendete Zeit für den Betrieb einer
virtuellen CPU für ein Gast-Betriebssystem), gemessen in
Uhren-Ticks (dividieren Sie durch sysconf(_SC_CLK_TCK)).
- (44) cguest_time %ld (seit Linux 2.6.24)
- Gastzeit der Kindprozesse des Prozesses, gemessen in Uhren-Ticks
(dividieren Sie durch sysconf(_SC_CLK_TCK)).
- (45) start_data %lu (seit Linux 3.3)
[PT]
- Adresse, oberhalb derer die initialisierten und nicht-initialisierten
Programmdaten (BSS) abgelegt werden.
- (46) end_data %lu (seit Linux 3.3)
[PT]
- Adresse, unterhalb derer die initialisierten und nicht-initialisierten
Programmdaten (BSS) abgelegt werden.
- (47) start_brk %lu (seit Linux 3.3)
[PT]
- Adresse, oberhalb derer der Heap von Programmen mit brk(2)
ausgedehnt werden kann.
- (48) arg_start %lu (seit Linux 3.5)
[PT]
- Adresse, oberhalb derer die Befehlszeilenargumente (argv) abgelegt
werden.
- (49) arg_end %lu (seit Linux 3.5) [PT]
- Adresse, unterhalb derer die Befehlszeilenargumente (argv) abgelegt
werden.
- (50) env_start %lu (seit Linux 3.5)
[PT]
- Adresse, oberhalb derer die Programmumgebung abgelegt wird.
- (51) env_end %lu (seit Linux 3.5) [PT]
- Adresse, unterhalb derer die Programmumgebung abgelegt wird.
- (52) exit_code %d (seit Linux 3.5)
[PT]
- Der Exit-Status des Threads in dem durch waitpid(2) berichteten
Format.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von
Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>, Dr. Tobias
Quathamer <toddy@debian.org>, Chris Leick <c.leick@vollbio.de>,
Erik Pfannenstein <debianignatz@gmx.de> und Helge Kreutzmann
<debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU General
Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite
finden, schicken Sie bitte eine E-Mail an die Mailingliste der
Übersetzer:
debian-l10n-german@lists.debian.org.