top


top (table of processes) — консольная команда, которая выводит список работающих в системе процессов и информацию о них. По умолчанию она в реальном времени сортирует их по нагрузке на процессор. Программа написана для UNIX-совместимых операционных систем и опубликована под свободной лицензией GNU FDL.

Программа часто используется системными администраторами. Альтернативами программе top для GNU/Linux являются утилиты atop и htop.

Пример

last pid: 34218; load averages: 0.65, 0.36, 0.29 up 0+11:38:05 16:30:36 3 processes: 1 running, 2 sleeping Mem: 82M Active, 93M Inact, 438M Wired, 112K Cache, 112M Buf, 1390M Free Swap: 2048M Total, 2048M Free PID USERNAME THR PR NICE SIZE RES STATE C TIME WCPU COMMAND 23805 root 1 106 10 6080K 3128K select 3 0:01 0.00% sshd 23806 root 1 8 10 3136K 2008K wait 2 0:00 0.00% bash 34218 root 1 106 10 2160K 1376K CPU2 0 0:00 0.00% top

Работа с программой

Программа с частотой обновления в 2с показывает текущую активность процессов в виде таблицы. Стандартные колонки:

  • PID — идентификатор процесса
  • USERNAME — пользователь, от которого запущен процесс
  • THR — количество потоков, запущенных процессом
  • PR — текущий приоритет процесса
  • NICE — приоритет, выставленный командой nice. От −20 (наивысший) до 19.
  • SIZE — размер процесса (данные, стек и т. д.) в килобайтах
  • RES — текущее использование оперативной памяти
  • STATE — текущее состояние («START», «RUN» (только в этом состоянии показывает текущую нагрузку программы на процессор), «SLEEP», «STOP», «ZOMB», «WAIT» или «LOCK»)
  • C — номер процессора, на котором идет выполнение (доступен только на SMP системах)
  • TIME — время использования процессора в секундах
  • VIRT — полный объем виртуальной памяти, которую занимает процесс
  • %CPU — процент доступного времени процессора, которое использовала запущенная программа
  • %MEM — процент использования оперативной памяти данным процессом
  • WCPU — усредненное значение CPU
  • COMMAND — команда, запустившая процесс.

Чтобы выйти из программы top, нужно нажать клавишу [q].

Полезные интерактивные команды, которые можно использовать в top:

  • [1] Отобразить всю статистику по всем ядрам.
  • [c] Абсолютный путь расположения модуля команды и её аргументы.
  • [h] Вывести справку о программе.
  • [k] Уничтожить процесс. Программа запрашивает у вас код процесса и сигнал, который будет ему послан.
  • [M] Сортировать по объёму используемой памяти.
  • [n] Изменить число отображаемых процессов. Вам предлагается ввести число.
  • [P] Сортировать по загрузке процессора.
  • [r] Изменить приоритет процесса.
  • [u] Сортировать по имени пользователя.
  • [Z] Выбрать цвет подсветки.
  • [z] Подсветить работающие процессы.
  • [Пробел] Немедленно обновить содержимое экрана.

Сокращенный вывод:

# top -SIt last pid: 9262; load averages: 0.13, 0.40, 0.36 up 2+09:16:14 22:13:43 103 processes: 1 running, 88 sleeping, 14 waiting CPU states: % user, % nice, % system, % interrupt, % idle Mem: 31M Active, 136M Inact, 61M Wired, 3212K Cache, 34M Buf, 12M Free Swap: 1024M Total, 30M Used, 994M Free, 2% Inuse PID USERNAME THR PR NICE SIZE RES STATE TIME WCPU COMMAND 11 root 1 171 ki31 0K 8K RUN 44.7H 76.27% idle 14 root 1 -44 - 0K 8K WAIT 16:30 14.65% swi1: net 1277 verlihub 1 8 0 12916K 5780K nanslp 69:52 2.00% verlihub 1028 root 1 8 0 3104K 504K nanslp 55:25 1.42% monitord 27 root 1 -68 - 0K 8K - 187:25 0.39% dummynet
  • l - спрятать / показать строку со средним значением нагрузки.
  • t - спрятать / показать строку с состоянием процессоров CPU.
  • m - спрятать / показать строки 4 и 5 с информацией о состоянии памяти.
  • -S Показывать процессы системы. Обычно, системные процессы такие как: pager или swapper не показываются. Эта опция сделает их видимыми.

Состояния процессора

  • us — (User CPU time) время, затраченное на работу программ пользователей
  • sy — (System CPU time) время, затраченное на работу процессов ядра
  • ni — (Nice CPU time) время, затраченное на работу программ с измененным приоритетом
  • id — простой процессора
  • wa — (iowait) время, затраченное на завершение ввода-вывода
  • hi — (Hardware IRQ) время, затраченное на обработку hardware-прерываний
  • si — (Software Interrupts) время, затраченное на работу обработку software-прерываний (network)
  • st — (Steal Time) время, «украденное» гипервизором у этой виртуальной машины для других задач (например работа другой виртуальной машины)или# top -SIt

last pid: 9262; load averages: 0.13, 0.40, 0.36 up 2+09:16:14 22:13:43 103 processes: 1 running, 88 sleeping, 14 waiting CPU states: % user, % nice, % system, % interrupt, % idle Mem: 31M Active, 136M Inact, 61M Wired, 3212K Cache, 34M Buf, 12M Free Swap: 1024M Total, 30M Used, 994M Free, 2% Inuse

PID USERNAME THR PR NICE SIZE RES STATE TIME WCPU COMMAND 11 root 1 171 ki31 0K 8K RUN 44.7H 76.27% idle 14 root 1 -44 - 0K 8K WAIT 16:30 14.65% swi1: net 1277 verlihub 1 8 0 12916K 5780K nanslp 69:52 2.00% verlihub 1028 root 1 8 0 3104K 504K nanslp 55:25 1.42% monitord 27 root 1 -68 - 0K 8K - 187:25 0.39% dummynet

История

Программа top была создана по примеру программы для операционной системы VMS. Уильям ЛеФевр, будучи студентом университета Райса, написал первую аналогичную программу в апреле 1984 года для операционной системы BSD 4.1. Она была выпущена под лицензией BSD, что повлияло на то, что программа была включена во множество проприетарных операционных систем BSD и UNIX.

Top переносилась под различные операционные системы множество раз, и под разными лицензиями. Программа подобная top была представлена в операционной системе AIX 4.3 в 1999 под названием topas.

Первая программа top была написана Роджером Биннсом. В большинство современных дистрибутивов GNU/Linux включается top, написанная С. Варнером и входит в пакет procps.



Имя:*
E-Mail:
Комментарий: