htop — это интерактивный монитор процессов и менеджер процессов в средах Unix-подобных систем. В отличие от классической утилиты top, htop обеспечивает визуальное, цветовое отображение состояния системы в текстовом режиме и даёт возможность управлять процессами (отправлять сигналы, изменять приоритеты) прямо из интерфейса без необходимости вручную вводить PID. Программа написана на языке C с применением библиотеки ncurses и первоначально была разработана как «улучшенная» альтернатива top.
Проект htop был начат Хишамом Мухаммадом примерно в 2004 году. Со временем программа расширилась, получив поддержку не только Linux, но и BSD, macOS, Solaris и других систем (начиная с версии 2.0 была реализована кроссплатформенная совместимость). htop распространён под лицензией GPL версии 2 (или выше). Благодаря удобству, визуальной подаче и интерактивности, утилита получила широкое признание среди системных администраторов и пользователей.
Интерфейс htop разделён на несколько частей: вверху отображаются сводные данные о загрузке процессоров, объёме памяти и swap, количестве задач и средней нагрузке. В основной части — список запущенных процессов с показателями CPU, памяти, времени работы и другими метками. В нижнем блоке размещаются подсказки по функциям и возможностям управления. Пользователь может прокручивать список процессов, фильтровать, сортировать и переключаться между видами отображения.
- Вертикальная и горизонтальная прокрутка списка процессов с полным отображением командной строки.
- Фильтрация и поиск процессов по ключевым словам или по имени пользователя.
- Сортировка по различным колонкам (CPU, память, время, приоритет и др.).
- Просмотр процессов в виде древовидной структуры (дерево родитель-потомок).
- Интерактивное управление процессами: отправка сигналов (например, завершение, перезапуск), изменение приоритетов (renice).
- Настраиваемый интерфейс: добавление или удаление разделов, изменение порядка метрик, включение/отключение отображения отдельных столбцов.
- Поддержка использования мыши (в терминалах, поддерживающих ввод курсором) наряду с клавиатурными сценариями.
- Отображение статистики загрузки CPU (каждого ядра), использования памяти, swap, а также средней нагрузки системы за 1, 5 и 15 минут.