Назад | Перейти на главную страницу

Есть ли такой Linux-инструмент, как top, только накопительный?

Я хотел бы найти такой инструмент, как top, который работает в терминале, но сохраняет совокупное количество используемого реального / пользовательского / системного времени.

Нашел ... "топ-S"

Я полагаю, что top уже хранит совокупное время, затраченное на процессор (пользователь + система). Вот что указано в поле TIME +:

  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

«реальное время», вероятно, не так интересно наблюдать - это просто количество времени, прошедшее с момента запуска процесса.

Если вы хотите взломать его самостоятельно, все, что вам нужно, находится в / proc / * / stat :)

Или попробуйте использовать ps:

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

(самая последняя строка, вероятно, ближе всего к тому, что вы на самом деле спрашиваете :)

Не знаю, правильно ли я понял, но top -a (или top -c a) - кумулятивный режим top в Mac OS X.

Единственная проблема с "top -S", "ps --cumulative" или "pidstat -T ALL" в том, что они добавляют только время завершенных процессов к родительским. Таким образом, вы не можете отслеживать использование процессорного времени в реальном времени, если дочерние процессы не завершаются слишком часто.