Comprobación de errores 0x109: CRITICAL_STRUCTURE_CORRUPTION
La comprobación de errores CRITICAL_STRUCTURE_CORRUPTION tiene un valor de 0x00000109. Esto indica que el kernel ha detectado daños críticos en el código de kernel o los datos.
Importante
Este artículo es para programadores. Si es un cliente que ha recibido un código de error de pantalla azul mientras usa el equipo, consulte Solución de errores de pantalla azul.
parámetros de CRITICAL_STRUCTURE_CORRUPTION
Parámetro | Descripción |
---|---|
1 |
Reservado |
2 |
Reservado |
3 |
Reservado |
4 |
Tipo de la región dañada. (Vea la tabla siguiente más adelante en esta página). |
El valor del parámetro 4 indica el tipo de región dañada.
Parámetro 4 | Tipo de región dañada, tipo de daños o tipo de acción realizada que causó daños |
---|---|
0x0 |
Una región de datos genérica |
0x1 |
Modificación de una función |
0x2 |
Una tabla de distribución de interrupciones del procesador (IDT) |
0x3 |
Una tabla de descriptores globales del procesador (GDT) |
0x4 |
Lista de procesos de tipo 1 dañada |
0x5 |
Lista de procesos de tipo 2 dañado |
0x6 |
Modificación de rutina de depuración |
0x7 |
Modificación crítica de MSR |
0x8 |
Tipo de objeto |
0x9 |
Un IVT de procesador |
0xA |
Modificación de una función de servicio del sistema |
0xB |
Una región de datos de sesión genérica |
0xC |
Modificación de una función de sesión o .pdata |
0xD |
Modificación de una tabla de importación |
0xE |
Modificación de una tabla de importación de sesión |
0xF |
Modificación de la llamada de Ps Win32 |
0x10 |
Modificación de la rutina del modificador de depuración |
0x11 |
Modificación del asignador irP |
0x12 |
Modificación del distribuidor de llamadas del controlador |
0x13 |
Modificación del distribuidor de finalización de IRP |
0x14 |
Modificación del desasignador irP |
0x15 |
Un registro de control de procesador |
0x16 |
Modificación crítica del registro de control de punto flotante |
0 x 17 |
Modificación de APIC local |
0x18 |
Modificación de la llamada de notificación del kernel |
0x19 |
Modificación de la lista de módulos cargados |
0x1A |
Lista de procesos de tipo 3 dañada |
0x1B |
Lista de procesos de tipo 4 dañada |
0x1C |
Daños en el objeto de controlador |
0x1D |
Modificación del objeto de devolución de llamada ejecutiva |
0x1E |
Modificación del relleno de módulos |
0x1F |
Modificación de un proceso protegido |
0x20 |
Una región de datos genérica |
0x21 |
Error de coincidencia de hash de página |
0x22 |
Error de coincidencia de hash de página de sesión |
0x23 |
Modificación del directorio de configuración de carga |
0x24 |
Modificación de la tabla de funciones invertida |
0x25 |
Modificación de la configuración de sesión |
0x26 |
Un registro de control de procesador extendido |
0x27 |
Tipo 1 daños en el grupo |
0x28 |
Daños en el grupo de tipo 2 |
0x29 |
Tipo 3 daños en el grupo |
0x101 |
Daños en el grupo general |
0x102 |
Modificación de win32k.sys |
Causa
Por lo general, hay tres causas diferentes para esta comprobación de errores:
Un controlador ha modificado accidentalmente o deliberadamente el código o los datos críticos del kernel. Microsoft Windows Server 2003 con Service Pack 1 (SP1) y versiones posteriores de Windows para equipos basados en x64 no permiten aplicar revisiones al kernel excepto a través de revisiones activas autorizadas originadas por Microsoft.
Un desarrollador intentó establecer un punto de interrupción normal del kernel mediante un depurador de kernel que no se adjuntó cuando se inició el sistema. Los puntos de interrupción normales (bp) solo se pueden establecer si el depurador está asociado a la hora de inicio. Los puntos de interrupción del procesador (ba) se pueden establecer en cualquier momento.
Se ha producido un daño en el hardware. Por ejemplo, el código del kernel o los datos podrían haberse almacenado en la memoria que produjo un error.
Resolución
La extensión de depuración !analyze muestra información sobre la comprobación de errores y puede ser útil para determinar la causa principal.
Para empezar, examine el seguimiento de la pila mediante el comando k, kb, kc, kd, kp, kP, kv (Display Stack Backtrace). Puede especificar el número de procesador para examinar las pilas de todos los procesadores.
También puede establecer un punto de interrupción en el código que conduce a este código de detención e intentar avanzar un paso hacia delante en el código de error.
Para obtener más información, consulte los siguientes temas:
Análisis de volcado de memoria mediante los depuradores de Windows (WinDbg)
Si no está equipado para usar el depurador de Windows para trabajar con este problema, puede usar algunas técnicas básicas de solución de problemas.
Compruebe el inicio de sesión del sistema Visor de eventos si hay mensajes de error adicionales que pueden ayudar a identificar el dispositivo o controlador que está causando esta comprobación de errores.
Si un controlador está identificado en el mensaje de comprobación de errores, deshabilita el controlador o ponte en contacto con el fabricante para obtener actualizaciones de controladores.
Ejecute la herramienta Diagnóstico de memoria de Windows para probar la memoria. En el cuadro de búsqueda del panel de control, escriba Memoria y, a continuación, seleccione Diagnosticar problemas de memoria del equipo. Una vez ejecutada la prueba, use visor de eventos para ver los resultados en el registro del sistema. Busque la entrada MemoryDiagnostics-Results para ver los resultados.
Puede intentar ejecutar los diagnósticos del hardware proporcionados por el fabricante del sistema.
Confirme que cualquier nuevo hardware instalado sea compatible con la versión instalada de Windows. Por ejemplo, puede obtener información sobre el hardware necesario en Windows 10 Especificaciones.
Para obtener información adicional sobre la solución de problemas general, consulte Datos de pantalla azul.