В Linux процессы могут находиться в нескольких состояниях. В top/htop и в /proc они обозначаются буквами.

Основные состояния процессов

  • R (Running / Runnable) — выполняется на CPU или готов к выполнению.
  • S (Sleeping) — спящий, ожидает события (например, ввод/вывод). Может быть прерываемым.
  • D (Uninterruptible Sleep) — спящий, не может быть прерван сигналом; обычно ждёт завершения I/O.
  • T (Stopped / Traced) — процесс остановлен (например, через SIGSTOP) или отслеживается отладчиком.
  • Z (Zombie) — процесс завершён, но его родитель ещё не прочитал статус; занимает PID, но не ресурсы CPU/RAM.
  • I (Idle / Idle kernel thread) — для потоков ядра, которые простаивают (используется в новых версиях ядра).

Дополнительные обозначения (иногда встречаются)

  • X — процесс мёртвый (dead), уже завершён.
  • t — поток, остановленный отладчиком.
  • < > — высокоприоритетный (real-time) процесс.
  • N — низкоприоритетный процесс (nice > 0).

Эти состояния отображаются в колонке S в top/htop и помогают понять, что делает процесс и влияет ли он на загрузку CPU или I/O.