Gibt es ein Linux-Tool wie top, nur kumulativ?

9

Ich würde gerne ein Tool wie top finden, das in einem Terminal ausgeführt wird, aber die kumulierte Summe der verwendeten Real- / Benutzer- / Systemzeit beibehält.

Dacracot
quelle

Antworten:

5

Fand es ... "top -S"

Dacracot
quelle
1

top hält meiner Meinung nach bereits eine kumulierte Gesamtzeit für die CPU (Benutzer + System). Das ist, was im Feld TIME + aufgeführt ist:

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 5117 michael   20   0  508m 238m  30m R   16  6.1   7:55.47 firefox
 3135 root      20   0  194m  53m  14m S    8  1.4  26:37.08 X
 4359 michael   20   0  117m  83m  14m S    1  2.1  17:59.34 gnome-panel

'Echtzeit' ist wahrscheinlich nicht so interessant anzusehen - es ist nur die Zeit, die seit Beginn des Prozesses vergangen ist.

Wenn Sie daran interessiert sind, es selbst zu hacken, finden Sie alles, was Sie brauchen, in / proc / * / stat :)

Oder versuchen Sie es mit ps:

ps -eo pid,user,args,etime,time,%cpu --sort %cpu
watch -n1 ps -eo pid,user,args,etime,time,%cpu --sort -%cpu

(Die allerletzte Zeile kommt wahrscheinlich dem am nächsten, was Sie tatsächlich fragen :)

MikeyB
quelle
1

Ich weiß nicht, ob ich es richtig verstehe, aber top -a(oder top -c a) ist der kumulative Modus von topMac OS X.

Studer
quelle
Versuchte es ... "oben: unbekanntes Argument 'a'"
Dacracot
Es ist top -Sfür die Version, die ich habe.
Bis auf weiteres angehalten.
Seltsam, unter Mac OS X gibt es kein -SArgument. Unterschiedliches Betriebssystem, unterschiedliche Argumente.
Studer
Nicht so seltsam. Ich arbeite unter Linux, Solaris und AIX und alle verwenden unterschiedliche Flags für gemeinsame Dinge. Es wird dich verrückt machen.
Satanicpuppy
0

Das einzige Problem mit "top -S", "ps --cumulative" oder "pidstat -T ALL" ist, dass sie den Eltern nur die Zeiten der beendeten Prozesse hinzufügen. Daher können Sie die CPU-Auslastung nicht in Echtzeit überwachen, wenn untergeordnete Prozesse nicht zu oft beendet werden.

user77376
quelle