Утилита top является одной из наиболее часто используемых программ для мониторинга процессов в операционных системах на основе UNIX, включая Linux. Она предоставляет динамический реальный обзор системы, показывая список процессов и их статусы, использование CPU, памяти и другую связанную информацию.
Значения в шапке
Первая строка (верхний заголовок):
- top: Имя утилиты.
- 09:02:34: Текущее системное время.
- up 14:46: Время, прошедшее с момента последней загрузки системы.
- 1 user: Количество пользователей, вошедших в систему.
- load average: 0.00, 0.00, 0.00: Средняя нагрузка на систему за последние 1, 5 и 15 минут.
Вторая строка (задачи):
- Tasks: Общее количество задач (процессов).
- 173 total: Общее количество процессов.
- 2 running: Количество процессов в состоянии выполнения.
- 171 sleeping: Количество спящих процессов.
- 0 stopped: Количество остановленных процессов.
- 0 zombie: Количество "зомби" процессов (процессы, завершившие своё выполнение, но оставшиеся в системе).
Третья строка (использование CPU):
- %Cpu(s): Процентное использование CPU.
- 0.3 us: Процент времени, затрачиваемого на выполнение пользовательских процессов.
- 0.1 sy: Процент времени, затрачиваемого на системные процессы.
- 0.0 ni: Процент времени, затрачиваемого на процессы с измененным приоритетом.
- 99.5 id: Процент времени, когда CPU был простаивающим.
- 0.0 wa: Процент времени, ожидающего ввода-вывода.
- 0.0 hi: Процент времени, затрачиваемого на обработку аппаратных прерываний.
- 0.0 si: Процент времени, затрачиваемого на обработку программных прерываний.
- 0.0 st: Процент времени, украденного из виртуальной машины.
Четвертая и пятая строки (память):
- MiB Mem: Общая информация об использовании физической памяти.
- 991.5 total: Общий объем памяти.
- 213.8 free: Объем свободной памяти.
- 231.8 used: Объем используемой памяти.
- 545.8 buff/cache: Объем памяти, используемый для буферов и кэша.
- MiB Swap: Информация об использовании swap-памяти (виртуальной памяти на диске).
- 0.0 total: Общий объем swap-памяти.
- 0.0 free: Объем свободной swap-памяти.
- 0.0 used: Объем используемой swap-памяти.
- available Mem: Доступный объем памяти.
Столбцы таблицы процессов:
- PID: Идентификатор процесса.
- USER: Пользователь, запустивший процесс.
- PR: Приоритет процесса.
- NI: Значение "nice", определяющее приоритет процесса.
- VIRT: Общий объем виртуальной памяти
- RES: Физический объем памяти (RAM), который в данный момент используется процессом. Это не включает память, которая была выделена, но не используется, и память в свопе.
- SHR: Объем разделяемой памяти, который используется процессом. Это память, которую процесс разделяет с другими процессами, обычно это библиотеки и другие ресурсы, которые могут быть разделены между несколькими процессами.
- %CPU: Процентная доля времени процессора, используемая процессом с момента последнего обновления.
- %MEM: Процент физической памяти, используемой процессом.
- TIME+: Общее процессорное время, использованное процессом с момента его запуска.
- COMMAND: Команда, которая была использована для запуска процесса.
Горячие клавиши
top поддерживает различные горячие клавиши для управления выводом и поведением программы:
Интерактивное управление процессами:
- k: убить процесс. Позволяет отправить сигнал SIGKILL или другой сигнал для завершения процесса.
- r: изменить приоритет (renice) процесса. Позволяет увеличить или уменьшить приоритет выполнения процесса.
Изменение представления:
- 1: переключение между общим представлением CPU и отдельным представлением по каждому ядру.
- V: древовидный вид процессов, позволяет увидеть иерархию родительских и дочерних процессов.
- H: переключение отображения тредов процесса.
Фильтрация и поиск:
- o или O: позволяет задать фильтр для вывода, что полезно для фокусировки на определенных процессах.
- L: поиск по процессам, что удобно при работе с большим количеством процессов.
Сортировка:
- < и >: выбор столбца, по которому будет выполнена сортировка.
- x: подсветка столбца, по которому выполняется сортировка.
Настройка отображения:
- f или F: вход в полноэкранное меню для настройки отображаемых столбцов.
- c: переключение между отображением полной командной строки процесса и только имени исполняемого файла.
- S: накопление времени процессора для процессов и их потоков.
- d или s: изменение интервала времени между обновлениями экрана.
Батч-режим:
- Запуск
top
в батч-режиме (с ключом -b
) для записи вывода в файл или для использования в другой программе.
Настройка конфигурации:
- Пользователь может создать файл конфигурации
.toprc
, где будут сохранены предпочтения по отображению и поведению утилиты.
Дополнительные метрики:
- Использование столбца NI, который отображает значение "nice", то есть приоритет процесса в планировщике задач.
Использование этих и других функций может значительно упростить мониторинг и управление процессами в системе, а также помочь в диагностике проблем с производительностью.