23

Есть ли в Linux какая-либо команда для определения, какой процесс запущен? Я заинтересован в выяснении загруженности процессора и времени простоя этого процессора.

3 ответа3

31

Вы можете использовать команду ps для запроса и отображения активного процессора. Например, вы можете запустить:

$ ps -aF
UID        PID  PPID  C    SZ   RSS PSR STIME TTY          TIME CMD
root         1     0  0  5971  1764   1 Sep15 ?        00:00:01 /sbin/init
ubuntu   28903  2975  0  3826  1208   0 09:36 pts/0    00:00:00 ps -aF

Столбец PSR показывает, что init работает на процессоре 1, а ps - на процессоре 0. Смотрите man-страницу для ps(1) для более подробной информации о том, как настроить отображаемые поля.

Вы можете настроить графический инструмент, такой как htop для отображения текущего активного процессора. Кроме того, htop имеет график отображения нагрузки на процессор, который может быть тем, что вы ищете. См., Например, следующий скриншот с http://htop.sourceforge.net/.

скриншот htop

Наконец, вы можете использовать инструмент taskset , чтобы принудительно установить связь с конкретным процессором.

23

Есть много способов узнать. htop, top, ps.

HTOP

  • протестированная версия: 1.0.2
  • URL: http://htop.sourceforge.net/

    1. Нажмите F2, чтобы войти в окно настройки
    2. выберите Столбцы в столбце Настройка
    3. Перейти Доступные столбцы
    4. добавить ПРОЦЕССОР выбор процессора
    5. Проверьте столбец процессора htop с процессорной колонкой

Топ

  • протестированная версия: procps 3.3.8
  • URL: http://gitorious.org/procps

    1. Нажмите f, чтобы попасть в окно управления полями.
    2. Выберите P (последний использованный процессор)

вот пример с последним столбцом P

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND   P 
 5626 yashi     20   0 1926276 545964  47596 R  12.6  3.4 151:10.81 gnome-sh+ 2 
 5347 root      20   0  384788  73600  55708 S   8.7  0.5  55:10.09 Xorg      1 
 8125 yashi     20   0  646240  30776  21928 S   4.3  0.2  23:06.20 gnome-sy+ 0 
 1785 yashi     20   0  581180  29288  15560 R   4.0  0.2   0:25.55 gnome-te+ 1

п.с.

PSR - это КОД для отображения идентификатора процессора. Вы можете использовать опцию формата как ps -o pid,psr или просто сделать ps -eF

$ ps -eF|head
UID        PID  PPID  C    SZ   RSS PSR STIME TTY          TIME CMD
root         1     0  0  3817   964   0 Aug14 ?        00:00:02 init [2]  
root         2     0  0     0     0   2 Aug14 ?        00:00:00 [kthreadd]
root         3     2  0     0     0   0 Aug14 ?        00:00:11 [ksoftirqd/0]
root         5     2  0     0     0   0 Aug14 ?        00:00:00 [kworker/0:0H]
root         7     2  0     0     0   0 Aug14 ?        00:00:00 [migration/0]
root         8     2  0     0     0   0 Aug14 ?        00:00:00 [rcu_bh]
root         9     2  0     0     0   3 Aug14 ?        00:00:39 [rcu_sched]
root        10     2  0     0     0   0 Aug14 ?        00:00:00 [watchdog/0]
root        11     2  0     0     0   1 Aug14 ?        00:00:00 [watchdog/1]
1

Я просто цитирую содержание man ps:

psr сообщит вам процессор, на котором запущен или запущен процесс. pcpu сообщит вам процент процессорного времени, затраченного процессом.

ps -eo pid, tid, class, rtprio, ni, pri, psr, pcpu, stat, wchan:14, комм

ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm | tail
 9847  9847 TS       -   0  19   2  0.0 S    -              kworker/2:0
10061 10061 TS       -   0  19   2  0.6 Sl   futex_wait_que chrome
10208 10208 TS       -   0  19   3  0.0 S    -              kworker/3:3
10247 10247 TS       -   0  19   1  0.0 S    -              kworker/1:1
10381 10381 TS       -   0  19   1  4.6 Sl   futex_wait_que chrome
10452 10452 TS       -   0  19   0  0.0 S    -              kworker/0:1
10491 10491 TS       -   0  19   0  0.5 Sl   futex_wait_que chrome
10504 10504 TS       -   0  19   2  0.0 S    -              kworker/2:1
10505 10505 TS       -   0  19   0  0.0 R+   -              ps
10506 10506 TS       -   0  19   3  0.0 S+   pipe_wait      tail

BSD стиль:

ps axo stat, euid, ruid, tty, tpgid, sess, pgrp, ppid, pid, psr, pcpu, comm

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .