Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

High CPU NTOSKRNL Windows Server, AD и Роли

Высокая нагрузка на процессор процессом NTOSKRNL.exe: решение проблемы

Обновлено: 28.08.2026 · Официальная документация ↗

Симптомы высокой загрузки процессора ядром NTOSKRNL

В диспетчере задач системный процесс System (ntoskrnl.exe) или Системные прерывания (System Interrupts / DPCs) непрерывно нагружает процессор на 30–100%. Сервер медленно реагирует на действия администратора, интерфейс зависает, падает производительность виртуальных машин и служб.

СимптомГде отображаетсяПричина
System грузит 100% одного ядра CPUДиспетчер задачДрайвер устройства зациклился в цикле обработки прерываний ISR/DPC
System Interrupts > 10-20% CPUProcess ExplorerАппаратный сбой контроллера диска, шлейфа SATA/SAS или конфликт ACPI
Постоянные задержки отклика интерфейсаLatencymonВысокое время выполнения функций ACPI.sys или storport.sys

Пошаговая диагностика и устранение нагрузки NTOSKRNL

  1. Выполните трассировку системных вызовов через Windows Performance Recorder (WPR):
    wpr -start CPU -filemode; Start-Sleep -Seconds 30; wpr -stop C:\Logs\CPU_Trace.etl
  2. Откройте созданный файл ETL в программе Windows Performance Analyzer (WPA): разверните график Computation > CPU Usage (Sampled) и сгруппируйте по столбцам Process -> Module -> Function, чтобы найти имя сбойного драйвера внутри ntoskrnl.exe.
  3. Проверьте задержки прерываний утилитой LatencyMon: скачайте и запустите LatencyMon на сервере на 2-3 минуты. Изучите вкладку Drivers для выявления драйвера с наивысшим DPC count и Execution time.
  4. Отключите системные таймеры HPET (High Precision Event Timer) при конфликтах:
    bcdedit /deletevalue useplatformclock; bcdedit /set disabledynamictick yes

Совет: Процесс System сам по себе не выполняет пользовательский код. Вся нагрузка в ntoskrnl.exe генерируется потоками сторонних аппаратных драйверов или антивирусных фильтров.

💡 Практика специалистов: Если вы видите нагрузку от потока ACPI.sys!ACPIInterruptServiceRoutine внутри ntoskrnl, на сервере некорректно работает термодатчик или блок питания посылает непрерывные сигналы регулировки частоты CPU.

Частые вопросы (FAQ)

Почему процесс System (ntoskrnl.exe) грузит процессор?

ntoskrnl.exe выполняет задачи ядра, включая потоки драйверов устройств, обработку прерываний оборудования (ISR/DPC) и системные операции ввода-вывода (I/O).

Как процесс Process Explorer помогает найти виновный поток?

Откройте свойства процесса System в Process Explorer, перейдите на вкладку 'Threads' и отсортируйте потоки по столбцу CPU. Имя функции подскажет виновный драйвер.

Может ли поврежденный кабель диска вызывать высокую нагрузку NTOSKRNL?

Да, при сбоях кабеля контроллер диска генерирует тысячи аппаратных прерываний в секунду (Interrupt Storm), пытаясь повторить передачу секторов.

Что делать, если нагрузку создает драйвер storport.sys?

Обновите драйверы и прошивку контроллера дисков (HBA/RAID) и проверьте состояние физических накопителей на наличие бэд-блоков.

Полезные материалы
Рекомендуем