Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

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