top
Отображает список процессов, загрузку CPU, память, время работы системы и другие ресурсы.
🖥️ Load Average
top - 11:51:13 up 37 min, 1 user, load average: 0.19, 0.42, 0.48
Load Average - среднее число процессов, находящихся в состоянии выполнения или ожидания CPU/I/O
за последние 1, 5 и 15 минут.
Показатель отражает общую конкуренцию за ресурсы, а не только загрузку процессора.
- ≈ числу ядер → система работает стабильно.
- Выше → CPU или I/O перегружены, процессы ждут ресурсов.
- Ниже → система недозагружена, есть запас мощности.
💡 На многопроцессорных системах важно сравнивать Load Average
с количеством логических ядер, а не только физических.
⚙️ Tasks
Tasks: 295 total, 1 running, 294 sleeping, 0 stopped, 0 zombie
Раздел Tasks показывает состояние всех процессов:
- total - всего процессов в системе
- running - активно выполняются на CPU
- sleeping - ждут события (ввода, ответа сети и т.д.)
- stopped - приостановлены пользователем (
Ctrl+ZилиSIGSTOP) - zombie - завершились, но родитель ещё не освободил их ресурсы
🔩 %Cpu(s)
%Cpu(s): 0.5 us, 0.5 sy, 0.0 ni, 98.8 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st
Эта строка показывает, на что тратится процессорное время:
- us (user) - время на пользовательские процессы
Eсли
us = 70%, значит 70% CPU заняты приложениями - sy (system) - работа ядра Linux: драйверы, системные вызовы
Высокий
syможет означать интенсивную работу с диском или сетью - ni (nice) - процессы с изменённым приоритетом
Если вы запустили фоновый процесс с
nice +10, его нагрузка отразится здесь - id (idle) - CPU простаивает
id = 95%- ресурсов хватает, сервер простаивает - wa (IO wait) - ожидание операций ввода-вывода (диск, сеть)
wa = 20%- CPU ждёт SSD, возможно, узкое место в I/O - hi (hardware interrupts) - обработка аппаратных прерываний
Рост
hiможет говорить об интенсивном сетевом трафике - si (software interrupts) - обработка программных прерываний внутри ядра
Высокий
si- частые внутренние события системы - st (steal) - “украденное” время гипервизором при виртуализации
Если
st > 5%, гипервизор отдаёт CPU другим виртуальным машинам
🐏 Memory
MiB Mem : 15651.0 total, 2749.6 free, 6566.8 used, 7318.3 buff/cache
MiB Swap: 0.0 total, 0.0 free, 0.0 used. 9081.4 avail Mem
- total - общий объём физической оперативной памяти (RAM), доступной системе
- used - часть памяти, занятая активными процессами и ядром; освобождается только при завершении процессов
- free - полностью неиспользуемая память, доступная немедленно
- buff/cache - область, применяемая ядром для буферизации и кэширования данных; может быть быстро освобождена при необходимости
- avail Mem - оценка реально доступной памяти для запуска новых приложений (учитывает free и часть buff/cache)
- swap - пространство на диске, используемое как расширение RAM при нехватке физической памяти
📋 Process Table
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
116317 sasha 20 0 1412.9g 700936 113408 S 10.6 4.4 24:07.45 code
- PID (Process ID) - Уникальный идентификатор процесса. Каждый процесс в системе имеет свой собственный PID.
- USER - Пользователь, от имени которого запущен процесс. Это может быть обычный пользователь или система (root).
- PR (Priority) - Это общий приоритет процесса, зависящий от
NIи динамической корректировки ядра. Чем ниже значение, тем выше приоритет. Диапазон значений от 39 (минимальный приоритет) до -51 (максимальный приоритет для реалтаймовых процессов). - NI (Nice Value) - Уровень nice (приоритет) процесса. Положительные значения снижают приоритет, отрицательные — повышают.Диапазон значений от 19 (минимальный приоритет) до -20 (максимальный приоритет).
- VIRT (Virtual Memory Size) - Объем виртуальной памяти, используемой процессом. Включает все выделенные страницы памяти, в том числе те, которые еще не загружены в RAM.
- RES (Resident Set Size) - Реальный объем памяти (RAM), используемый процессом. Это то, что фактически занимается в оперативной памяти.
- SHR (Shared Memory) - Количество памяти, разделяемой между процессами (например, через общие библиотеки).
- S (Status) - Состояние процесса:
S: Спящий (sleeping).R: Запущенный (running).D: Неотложное ожидание (uninterruptible sleep). Процесс в состоянииDне может быть прерван сигналами.T: Остановленный (stopped).Z: Зомби-процесс.
- %CPU - Процент использования CPU процессом.
- %MEM - Процент использования оперативной памяти процессом.
- TIME+ - Общее время, проведенное процессом в режиме пользователя и ядра.
- COMMAND - Команда или имя процесса.