Uso elevado de la CPU por parte del proceso Ntoskrnl.exe (sistema) en Windows 10
En una de las computadoras con Windows 10 recién instalado, un usuario comenzó a quejarse de constantes interrupciones y lentitud del sistema operativo. El Administrador de tareas muestra que aproximadamente el 50% de los recursos de la CPU son utilizados por el proceso Sistema(ntoskrnl.exe). En este artículo, intentaré describir los principales métodos de diagnóstico de la alta utilización de la CPU por parte de diferentes procesos y las formas de descubrir el problema del componente de Windows o del controlador del sistema.
La situación en la que el proceso del sistema consume más de la mitad de los recursos de la CPU del sistema no es normal. Ntoskrnl.exe es el ejecutable del kernel del sistema operativo. Es el proceso central del sistema. El kernel del sistema operativo ejecuta los controladores del sistema de los dispositivos, que probablemente sean la fuente del problema (los desarrolladores de hardware no prueban correctamente todos los controladores).
Como regla general, el problema de la fuga en el código del controlador y el alto uso de la CPU, la memoria o los recursos del disco aparece después de la instalación de un nuevo hardware, una nueva versión del controlador (incluidas las actualizaciones automáticas del controlador, que se pueden desactivar) o después de la actualización de Windows.
Consejo. En algunos casos, una gran carga en la CPU y la memoria puede provocar el proceso de memoria comprimida.
Para comprender qué controlador o módulo causa una alta utilización de la CPU, puede utilizar una herramienta gratuita Process Explorer. Descárgalo y ejecútalo como administrador.
Busque Sistema en la lista de procesos en ejecución, haga clic con el botón derecho y abra sus Propiedades.
Ve a la pestaña Hilos. Ordene la lista de módulos cargados por el núcleo por la tasa de uso de la CPU (columna CPU). En la columna Dirección de inicio, se muestra el nombre de un componente o un controlador, lo que provoca una gran carga (la siguiente captura de pantalla no es del sistema problemático, en mi caso fue el proceso ntoskrnl.exe).
Para encontrar un controlador que provoque una alta carga de la CPU, también puede usar una herramienta gratuita de Microsoft kernrate.exe (Kernrate Viewer). La herramienta forma parte de WDK (Windows Device Kit). Después de la instalación de WDK, puede encontrar la herramienta en la carpeta …\Tools\Other md64.
Ejecute kernrate.exe sin parámetros y espere hasta que se recopilen los datos (10-15 minutos), luego finalice la herramienta presionando Ctrl-C. Mire la lista de módulos en la sección Resultado del modo kernel.
Como puede ver, en nuestro ejemplo, el módulo b57nd60x está causando un alto uso de la CPU. Usando Google o la herramienta Sigcheck (vea el ejemplo del uso de Sigcheck para detectar los archivos del controlador relacionados con el módulo), puede detectar que el problema está causado por el controlador Broadcom NetXtream Gigabit Ethernet NDIS6.0.
También puede analizar el uso de la CPU durante el arranque del sistema con Windows Performance Toolkit (WPT). Debe instalar el WPT y ejecutar la recopilación de datos en la consola gráfica Windows Perfomance Recorder (triángulo de primer nivel + uso de CPU -> Inicio).
O puede comenzar a recopilar datos para el análisis usando el comando:
xperf -on latency -stackwalk profile -buffersize 1024 -MaxFile 256 -FileMode Circular && timeout -1 && xperf -d cpuusage.etlConsejo. Se recomienda utilizar este método si después de iniciar el sistema se cuelga y es simplemente imposible trabajar en él. Es probable que el artículo sobre el método de diagnóstico del arranque lento de Windows también te pueda resultar útil.
Debe guardar el archivo y abrirlo en Windows Performance Analyzer (WPA). Expanda la pila de procesos del sistema. En este ejemplo, puede ver que el controlador athrx.sys (adaptador de red inalámbrica Atheros) genera una carga de CPU elevada.
Para resolver el problema, instale la versión más reciente (o anterior) del controlador, o deshabilite (desconecte) por completo el hardware si el problema persiste con cualquier versión del controlador. El controlador actualizado puede someterse a una prueba de esfuerzo adicional mediante el Verificador de controladores.





