верх (программное обеспечение)
Оригинальный автор(ы) | Уильям Лефевр |
---|---|
Первоначальный выпуск | 1984 год |
Написано в | С |
Операционная система | Unix-подобный |
Тип | Средство просмотра процессов/ Системный монитор |
top (таблица процессов) — это диспетчер задач или программа системного мониторинга , встречающаяся во многих Unix-подобных операционных системах и отображающая информацию об использовании процессора и памяти.
Обзор
[ редактировать ]Программа формирует упорядоченный список запущенных процессов, выбранных по заданным пользователем критериям, и периодически обновляет его. По умолчанию порядок сортируется по использованию ЦП, показаны только самые популярные потребители ЦП. top показывает, сколько вычислительной мощности и памяти используется, а также другую информацию о запущенных процессах. Некоторые версии top допускают обширную настройку отображения, например выбор столбцов или метода сортировки. top полезен системным администраторам , так как показывает, какие пользователи и процессы потребляют больше всего системных ресурсов в любой момент времени.
Реализации
[ редактировать ]Существует несколько различных версий топа. Традиционная версия Unix была написана Уильямом Лефевром и первоначально защищена авторскими правами в 1984 году. [ 1 ] Он размещен на SourceForge , [ 2 ] а выпуск 3.7 был анонсирован в 2008 году. [ 3 ]
Версия top для Linux является частью procps-ng группы инструментов . Первоначально ее написал Роджер Биннс. [ 4 ] и выпущен в начале 1992 года, но вскоре после этого перешел к другим. [ 5 ]
В Solaris примерно эквивалентной программой является prstat. В Microsoft Windows есть команда списка задач и графическая утилита диспетчера задач . В IBM AIX имеется обновляемый список запущенных процессов с помощью команд topas и topas_nmon .
Среднее значение нагрузки в Linux представляет собой сумму количества процессов, ожидающих в очереди выполнения, плюс число выполняющихся в данный момент. Число абсолютное, а не относительное. И, таким образом, оно может быть неограниченным ; в отличие от утилизации. Мгновенные изменения числа процессов демпфируются с помощью формулы экспоненциального затухания , которая рассчитывается с использованием математических вычислений с фиксированной точкой . [ 6 ]
Программа ps аналогична программе top, но вместо этого создает снимок процессов, сделанный во время вызова. топ Опция n (количество итераций) может дать аналогичный результат, заставляя программу выполнить указанное количество итераций, а затем выйти после печати вывода.
Пример
[ редактировать ]Первые 5 строк отображают всю систему.
top - 14:21:23 up 2 days, 21:40, 44 users, load average: 14.44, 14.13, 14.64
| | | |
<time> <system uptime> <user count> <load average for the past 1, 5, 15 minutes>
Tasks: 1552 total, 8 running, 1544 sleeping, 0 stopped, 0 zombie
%Cpu(s): 9.6 us, 0.7 sy, 0.0 ni, 89.5 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st
| | | | | | | '------.
<user> <system> <nice> <idle> <IOWait> <hardware/software interrupt> <steal time>
MiB Mem : 1031911.+total, 368915.2 free, 172285.0 used, 490711.5 buff/cache
MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 807110.1 avail Mem
load average
— это экспоненциальное скользящее среднее длины очереди выполнения за последние 1/5/15 минут. Очередь выполнения включает как запущенные, так и ожидающие запуска процессы. При полной загрузке без переключения задач средняя нагрузка равна количеству процессоров. [ 7 ]
Tasks
подсчитывает процессы и их статусы.
%Cpu(s)
подсчитывает процент использования ЦП с разбивкой по категориям.
MiB Mem
: Использование памяти в мебибайтах . buff/cache
предназначен для памяти, используемой буферами и кешем .
MiB Swap
: Использование пространства подкачки в мебибайтах . Если системе требуется больше ресурсов памяти и оперативная память заполнена, неактивные страницы памяти перемещаются в пространство подкачки. На этом снимке общий объем подкачки составляет 2048 МБ, и все они свободны, что указывает на отсутствие подкачки, что хорошо для производительности.
avail Mem
: Объем памяти, доступной для новых приложений, без подкачки. При этом учитывается не только неиспользуемая ОЗУ, но и память, которую можно освободить из кэшей ОЗУ.
Остальная часть текста представляет собой таблицу, в которой каждая строка представляет собой процесс , причем из множества возможных столбцов часто используются следующие столбцы (выбор и порядок столбцов настраиваются): [ 8 ]
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 2456 1612 1500 S 0.0 0.0 0:00.07 init(Ubuntu)
4 root 20 0 2456 4 0 S 0.0 0.0 0:00.00 init
656403 user2 20 0 80.0g 3.6g 370000 S 100.0 0.4 1594:38 python3
2024198 longnam+ 20 0 50.5g 4.7g 609200 S 1.6 0.5 204:46.85 long-name-proc
2056804 longnam+ 20 0 237.1g 31.1g 23.1g S 136.8 3.1 69:54.11 python3
PID
: Идентификатор процесса , уникальный номер, идентифицирующий каждый запущенный процесс.USER
: Пользователь, запустивший процесс. Если имя пользователя слишком длинное, оно обрезается знаком+
в конце.PR
в реальном времени : приоритет задачи , вычисляемый системным планировщиком. Меньшие значения PR считаются более важными для планировщика и с большей вероятностью будут запланированы, что означает, что у него, как правило, больше процессорного времени в реальном времени.NI
: качество задачи, устанавливаемое вручную пользователями и администраторами для влияния на приоритет в реальном времени. Более низкое значение приятности имеет тенденцию благоприятствовать процессу, а более высокое значение приятного имеет тенденцию препятствовать процессу. Он варьируется от -20 (наиболее благоприятное) до 19 (наименее благоприятное).VIRT
: Размер виртуальной памяти процесса. Сюда входит вся память, к которой может получить доступ процесс, включая выгруженную, выделенную, но не используемую память и разделяемую память.RES
: Размер резидентного набора , часть памяти процесса, которая хранится в оперативной памяти. По сравнению сVIRT
, это исключает память, которая выгружена, еще не используется или не используется совместно.SHR
: Размер общей памяти : сколько оперативной памяти, востребованной процессом, может использоваться совместно с другими процессами.S
: Статус процесса. Статус может быть:R
для бегаS
для снаI
для простояD
для сна диска (бесперебойный)Z
для зомби (уничтожено, но не получено родителем)T
для остановки по сигналу управления заданием илиt
для остановки отладчиком во время трассировки .
%CPU
: процент процессорного времени, который процесс использует в данный момент.%MEM
: процент физической оперативной памяти, используемый процессом.TIME+
: общее время ЦП, использованное задачей с момента ее запуска. Это показано вminutes:seconds
. Вход с плюсомTIME+
означает, что это с точностью до 0,01 секунды. Если это показываетTIME
тогда это с точностью до 1 секунды.COMMAND
: Аргумент командной строки, запустивший процесс. В отличие отUSER
, если команда слишком длинная, она обрезается без+
в конце.
См. также
[ редактировать ]- Мониторинг пропускной способности Bmon для Linux
- htop интерактивный системный монитор для Linux
- ифтоп
- ЗадержкаTOP
- mpstat
- nmon для AIX и Linux системный монитор
- нтоп
- PowerTOP
- сар (Unix)
Ссылки
[ редактировать ]- ^ «Документация» . Юникс Топ . Архивировано из оригинала 13 апреля 2008 г. Проверено 22 мая 2016 г.
- ^ Лефевр, Уильям (16 сентября 2014 г.). «О Топе» . Юникс Топ . Архивировано из оригинала 20 апреля 2004 г. Проверено 22 мая 2016 г.
- ^ «Топ/Новости» . СоурсФордж . Проверено 22 мая 2016 г.
- ^ «top(1): задачи — справочная страница Linux» . Документация по Linux . Проверено 22 мая 2016 г.
- ^ Биннс, Роджер. «Linux Top Origins | Мир Роджера» . Мир Роджера . Проверено 22 мая 2016 г.
- ^ Дж. Гюнтер, Нил (2010). «Средняя загрузка UNIX, часть 2: не ваш средний средний показатель» (PDF) . Teamquest.com. Архивировано из оригинала (PDF) 2 июня 2012 г. Проверено 10 июня 2013 г.
- ^ Уокер, Рэй (1 декабря 2006 г.). «Изучение средней нагрузки» . Linux-журнал . Проверено 13 марта 2012 г.
- ^ верх(1) - справочная страница Linux
Внешние ссылки
[ редактировать ]- FreeBSD по основным командам Руководство –
- OpenBSD по общим командам Руководство –
- Linux пользователя Руководство – Пользовательские команды –
- «Расшифровано: Верхняя утилита (procps)» . www.maizure.org . Проверено 11 февраля 2024 г. . Глубокое погружение в механику
top
. - Джеймс, Хайден (18 сентября 2019 г.). «Как настроить верхнюю команду Linux» . www.redhat.com . Проверено 11 февраля 2024 г.