Compartir a través de


Comprobación de errores 0x19: BAD_POOL_HEADER

La comprobación de errores BAD_POOL_HEADER tiene un valor de 0x00000019. Esto indica que un encabezado de grupo está dañado.

Importante

Este artículo va dirigido a 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 BAD_POOL_HEADER

El parámetro 1 indica el tipo de infracción. El significado de los demás parámetros depende del valor del Parámetro 1.

Parámetro 1 Parámetro 2 Parámetro 3 Parámetro 4 Causa del error

0x2

Entrada del grupo que se está comprobando

Tamaño del bloque del grupo

0

Error en la comprobación del patrón de grupo especial.

(Es probable que el propietario haya dañado el bloque de grupo).

0x3

Entrada del grupo que se está comprobando

Valor freelist de flink de relectura

Valor freelist de blink de relectura

El valor freelist del grupo está dañado.

(En una lista correcta, los valores de los parámetros 2, 3 y 4 deben ser idénticos).

0x5

Una de las entradas del grupo

Reserved

La otra entrada del grupo

Un par de entradas de grupo adyacentes tienen encabezados que se contradecían entre sí. Al menos uno de ellos está dañado.

0x6

Una entrada calculada incorrectamente

Reserved

La entrada incorrecta que provocó el cálculo incorrecto

El tamaño anterior del encabezado del bloque de grupo es demasiado grande.

0x7

0

Reserved

Entrada de grupo incorrecta

El tamaño del encabezado del bloque de grupo está dañado.

0x8

0

Reserved

Entrada de grupo incorrecta

El tamaño del encabezado del bloque de grupo es cero.

0x9

Una entrada calculada incorrectamente

Reserved

La entrada incorrecta que provocó el cálculo incorrecto

El tamaño del encabezado del bloque de grupo está dañado (es demasiado grande).

0xA

Entrada del grupo que se debería haber encontrado

Reserved

Dirección virtual de la página que debe contener la entrada del grupo

El tamaño del encabezado del bloque de grupo está dañado.

0xD, 0xE, 0xF, 0x23, 0x24, 0x25

Reservado

Reservado

Reserved

El encabezado de grupo de un bloque liberado se ha modificado después de liberarlo. Esto no suele ser culpa del propietario anterior del bloque liberado, sino que suele deberse (aunque no siempre) a que el bloque que precede al bloque liberado está saturado.

0x20

Entrada del grupo que se debería haber encontrado

La siguiente entrada del grupo

Reserved

El tamaño del encabezado del bloque de grupo está dañado.

0X21

Puntero del grupo que se libera

Número de bytes asignados para el bloque de grupo

Valor dañado encontrado después del bloque de grupo

Los datos que siguen al bloque de grupo que se liberan están dañados. Normalmente esto significa que el consumidor (pila de llamadas) ha saturado el bloque.

0X22

Dirección que se libera

Reservado

Reserved

Una dirección que se libera no tiene una entrada de seguimiento. Esto suele deberse a que la pila de llamadas está intentando liberar un puntero que, o bien ya se ha liberado, o bien nunca se asignó.

Causa

El grupo ya está dañado en el momento de la solicitud actual.

Esto puede deberse o no al llamador.

Solución

Los vínculos internos del grupo se deben recorrer mediante el depurador de kernel para averiguar una posible causa del problema.

A continuación, puede usar un grupo especial para las etiquetas de grupo sospechosas o usar la opción "Grupo especial" del comprobador de controladores en el controlador sospechoso. La extensión !analyze puede ser de ayuda para identificar al controlador sospechoso, pero esto no suele ser el caso de los elementos que dañan del grupo.

Siga los pasos descritos en Análisis de los datos de la comprobación de errores de la pantalla azul para recopilar los parámetros de código de detención. Use los parámetros de código de detención para determinar el tipo específico de comportamiento de código que está trabajando para realizar un seguimiento.

Comprobador de controladores

El Comprobador de controladores es una herramienta que se ejecuta en tiempo real para examinar el comportamiento de los controladores. Si ve errores en la ejecución del código de controlador, crea proactivamente una excepción para permitir que esa parte del código del controlador se examine aún más. El Administrador del comprobador de controladores está integrado en Windows y está disponible en todos los equipos Windows. Para iniciar el Administrador del comprobador de controladores, escriba Verifier en un símbolo del sistema. Puede configurar qué controladores desea comprobar. El código que comprueba los controladores añade sobrecarga a medida que se ejecuta, así que intente comprobar el menor número de controladores posible. Para obtener más información, consulte Comprobador de controladores.

Diagnóstico de memoria de Windows

Si esta comprobación de errores aparece de forma incoherente, podría estar relacionada con la memoria física defectuosa.

Ejecute la herramienta de 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 los problemas de memoria del equipo. Una vez ejecutada la prueba, use el Visor de eventos para ver los resultados en el registro del sistema. Busque la entrada Resultados de MemoryDiagnostics para ver los resultados.