Похоже, что в выводе / конфигурации htop происходит комбинация вещей, которая приводит к тому, что «ничто» отвечает за 100% загрузку ЦП, отображаемую на панели дисплея. Это одноядерный компьютер (ВМ)?
процессы ядра:
По умолчанию htop не отображает процессы ядра в списке потоков (top показывает). Вы можете переключить отображение процессов ядра, нажав Shift+k. Поскольку в разделе Tasks:
нет потоков ядра (kthr), ясно, что они в настоящий момент скрыты.
сортировка по загрузке процессора:
У вас нет списка процессов, в настоящее время отсортированного по загрузке процессора. Нажмите клавишу F6 и используйте клавиши со стрелками, чтобы выбрать PERCENT_CPU. Это позволит вам увидеть процессы, которые почти наверняка в настоящее время скрыты от просмотра (из нижней части списка), которые используют ненулевой процент ЦП.
Индикатор загрузки процессора:
Одним из признаков того, что процессы ядра не отображаются, является панель процессора, которая показывает, что (примерно) 40% ЦП используется ядром, что можно определить по цвету различных частей, составляющих ЦП «визуально». Представление htop обеспечивает. Цвета определяются как:
Общесистемное использование процессора:
Синий: процессы с низким приоритетом (приятно> 0)
Зеленый: нормальные (пользовательские) процессы.
Красный: процессы ядра.
Желтый: время IRQ.
Пурпурный: мягкий IRQ времени.
Грей: IO Время ожидания.
все еще видите несоответствие?
Метод получения усредненного по времени, а не фактического мгновенного числа использования ЦП обсуждается в ответе на несколько похожий вопрос на serverfault.com. Сбор этих данных и сравнение с загрузкой ЦП на 100% позволит вам получить более четкое представление о том, что «привязывает» ваш ЦП. Другой ответ на тот же вопрос ссылается на инструмент под названием atop, который также очень полезен для анализа загрузки ЦП с течением времени, а также для мгновенных представлений типа снимка, подобных тем, которые в первую очередь предоставляет htop.
одноядерный
Поскольку кажется, что ваш сервер работает только с одним ядром, влияние изменений контекста режима ядра может быть более значительным - когда код выполняется в контексте ядра (прерывания, некоторые операции синхронизации ввода-вывода и т.д.), Нет места для Планировщик ОС, позволяющий запускать пользовательские процессы, - привычная нам привычка к сегодняшнему почти универсальному использованию компьютеров SMP .