Se produce un error STOP 7F, 0x00000008 (doble error) debido a un error de un solo bit en el registro ESP

En este artículo se proporciona una solución para un mensaje de error STOP 0x0000007F, 0x00000008 en el equipo debido a un error de procesador específico. Este mensaje de error puede aparecer cuando se produce un error de bit único en el registro del proveedor de servicios eléctricos (ESP) de un procesador que se está ejecutando en el equipo.

Versión del producto original:   Windows Server 2012 R2
Número de KB original:   842465

Síntomas

En un equipo que ejecuta uno o más procesadores Intel Xeon, o que ejecuta otros procesadores, Windows puede mostrar un mensaje de error STOP similar al siguiente ejemplo:

STOP 0x0000007F (0x00000008, 0x00000000, 0x00000000, 0x00000000) UNEXPECTED_KERNEL_MODE_TRAP

Cuando se produce este problema, se cumplen las condiciones siguientes:

  • El primer parámetro del error STOP es "0x0000008". (Este error es una excepción de doble error).
  • Debido a un error de un solo bit en la mitad superior del registro ESP, el valor del registro ESP está fuera del intervalo de pila del subproceso actual.

Causa

Este problema se produce si uno o varios de los procesadores del equipo:

  • Requerir una actualización del microcódigo que no se aplique en el sistema básico de entrada y salida (BIOS) del equipo.

  • Están dañados o son defectuosos.

  • Están funcionando fuera de los intervalos especificados para las condiciones de temperatura, potencia u otras.

Solución

Para resolver este problema, use uno de los siguientes métodos de solución de problemas.

Método 1: determinar si el procesador está ejecutando la revisión de producción de la actualización del microcódigo

Una actualización de microcódigo corrige erratas o errores en la lógica de implementación interna de un procesador. Las actualizaciones de microcódigo no se pueden almacenar permanentemente en el procesador mismo y deben cargarse en el procesador cada vez que se inicia el equipo. Las actualizaciones del microcódigo pueden ser aplicadas por el BIOS del equipo o por el controlador de Update.sys.

Para identificar la revisión de la actualización de microcódigo que se aplica actualmente a un procesador Intel instalado en el equipo, siga estos pasos:

  1. Descargue la utilidad para identificar la frecuencia del procesador Intel desde el sitio web de Intel.

  2. Instale y ejecute la utilidad Intel Processor Frequency ID en el equipo que está experimentando los síntomas.

  3. Anote la siguiente información de CPU para cada procesador:

    • Familia de CPU
    • Modelo de CPU
    • Versión de CPU
    • Revisión de la CPU

    Los valores CPU Family, CPU Model y CPU Stepping identifican el tipo específico de procesador. El valor de revisión de CPU identifica la revisión de la actualización del microcódigo que se aplica.

  4. Póngase en contacto con el fabricante del equipo para determinar si la revisión de la actualización del microcódigo es la revisión más actual disponible para un procesador en particular. Si la revisión no es la más reciente, solicite al fabricante del equipo un BIOS actualizado que aplique la revisión de actualización del microcódigo más reciente.

Los síntomas descritos en este artículo se han observado con más frecuencia en los procesadores Intel Xeon que tienen los valores de CPU Family, Model CPU y CPU Stepping de 15, 2 y 9, respectivamente, y que están instalados en las motherboards que usan conjuntos de chips ServerWorks. (Los valores hexadecimales CPU Family, CPU Model y CPU Stepping son F, 2 y 9 respectivamente). Estos procesadores requieren un valor de revisión de 0x18 o posterior para funcionar correctamente. (0x18 equivale a un valor decimal de 24).

Un valor de revisión de 0 indica que el BIOS del equipo no tiene la actualización del microcódigo correcta para los procesadores instalados en el equipo. Debe actualizar el BIOS con una revisión de actualización del microcódigo que admita los procesadores que está usando.

Intel recomienda que aplique las revisiones de actualización de microcódigo más recientes para ayudar a evitar problemas conocidos.

Método 2: determinar si un procesador está dañado o es defectuoso

Si los procesadores instalados en los equipos afectados tienen aplicada la revisión de actualización del microcódigo de producción y los síntomas que se describen en este artículo no se producen en todos los equipos del mismo modelo que ejecutan los mismos procesadores, es posible que los procesadores sean defectuosos.

Para determinar si un procesador está dañado o es defectuoso, mueva el procesador a un equipo que no experimente síntomas.

Advertencia

Si cambia de procesador, siga las instrucciones proporcionadas por el fabricante del equipo o haga participar en los técnicos de hardware adecuados para cambiar los procesadores.

Si los síntomas continúan produciéndose en el equipo original con el procesador de reemplazo, pero no en el otro equipo con el procesador original, es probable que el problema no se deba a un procesador dañado o defectuoso.

Si los síntomas no continúan produciéndose en el equipo original con el procesador de reemplazo, pero se producen en el otro equipo con el procesador original, el problema probablemente se deba a un procesador dañado o defectuoso. En este caso, póngase en contacto con el fabricante del equipo para reemplazar el procesador original.

Si el equipo que experimenta los síntomas descritos en este artículo tiene más de un procesador, mueva todos los procesadores al otro equipo. Si los resultados indican que uno o más de estos procesadores pueden ser defectuosos, mueva los procesadores de uno en uno para determinar el procesador o los procesadores que pueden ser defectuosos.

Método 3: determinar si un procesador está funcionando fuera de un intervalo especificado de condiciones ambientales

Una temperatura de habitación excesiva, una ventilación defectuosa o una acumulación de polvo puede hacer que los componentes electrónicos, como los procesadores, se comporten de manera errática. Los ventiladores que no funcionan correctamente o las pasajes de aire bloqueados pueden causar problemas de ventilación. Si el interior o los conductos de aire del equipo están pulverizados, o si el equipo presenta síntomas cuando se instala solo en una ubicación determinada, el sobrecalentamiento del sistema puede ser un factor. Asegúrese de que los componentes están limpios, que los ventiladores funcionan correctamente y que los conductos de aire no están obstruidos. Además, asegúrese de que el salón donde se encuentra el equipo está ventilado correctamente. La temperatura del salón debe estar en el intervalo de funcionamiento especificado por el fabricante del equipo.

El voltaje que es superior o inferior al especificado, o que fluctúa, puede hacer que los procesadores y otros componentes electrónicos se comporten de manera errática. Una tensión de alimentación principal incorrecta o incoherente, una fuente de alimentación sobrecargada o que funcione incorrectamente en el equipo, o una circuitería de la placa base que no funciona correctamente, puede provocar que se suministre una tensión incorrecta o incoherente al procesador. Póngase en contacto con los técnicos apropiados para comprobar si alguno de estos problemas puede ser la causa de los síntomas.

Más información

Para obtener más información acerca de los errores STOP 0x0000007F, consulte el error STOP 0x0000007f en un equipo basado en Windows.

El registro ESP también se conoce como registro del puntero de pila. Una pila es una estructura de datos en la memoria que se usa para almacenar información sobre el estado actual de la ejecución de un subproceso. La pila de un subproceso se usa para realizar un seguimiento de las llamadas de función en curso, de parámetros que se pasan a esas funciones y de las variables que usan dichas funciones. Se espera que el valor del registro ESP apunte a la parte superior actual de la pila. Si el valor de ESP es incorrecto, puede que apunte a información incorrecta o a una dirección no válida. Si el valor de ESP apunta a una dirección no válida, puede producirse una excepción de doble error.

Para determinar si el error STOP es el resultado de un error de un solo bit en el registro ESP, siga estos pasos:

  1. Instale las herramientas de depuración de Microsoft para Windows.

  2. Ejecute la herramienta WinDbg, seleccione File, seleccione Open Crash dump para buscar el archivo de volcado de memoria que contiene la información de error STOP y, a continuación, seleccione Aceptar.

  3. Ejecute el !analyze -v comando para obtener un análisis automatizado del archivo de volcado.

  4. Examine el resultado del !analyze -v comando para ver si el resultado muestra una condición de doble error. Si existe una condición de doble error, ejecute el .tss 28 comando para mostrar el estado del sistema en el momento en que se produce el error doble. Por lo general, este valor está relativamente cerca del valor del registro EBP.

  5. Ejecute el !thread comando para ver el intervalo de pila del subproceso actual. Una excepción de doble error suele producirse cuando el valor del registro ESP está fuera del intervalo de direcciones reservado para la pila para el subproceso actual.

    Cuando se ejecuta este subproceso en particular, el valor del registro ESP debe estar siempre entre el valor de la pila base (f5d2a000) y el valor límite (f5d27000). Por lo general, el valor del registro ESP está relativamente cerca del valor actual (f5d29c9c). (El valor actual también se encuentra entre el valor de base de pila y el valor de límite).

    Es posible que también pueda comprobar los valores del intervalo de pila ejecutando el !pcr comando.

    El NtTib.StackLimit valor representa el límite inferior del intervalo de pila. El NtTib.StackBase valor representa un valor reciente de ESP. El NtTib.StackBase valor se puede comparar con el valor actual del registro ESP para identificar si hay un error de bit único en el valor de registro ESP actual.

  6. Ejecute el .formats esp ^ ebp comando para mostrar las diferencias en los valores entre los registros ESP y EBP. El valor del puntero de pila en el registro EBP se aproximará al valor del puntero de pila en el registro ESP, excepto para el error de bit único. Este comando revela con frecuencia el bit de orden superior que contiene el error, especialmente cuando el error se muestra en formato binario.

    Si pasa por alto los dígitos inferiores menos significativos, la diferencia de bit único entre los registros ESP y EBP es de 00000000 00001000 00000000 00000000 en formato binario. La diferencia es 00080000 en formato hexadecimal.

    Este error de un solo bit hace que el registro ESP contenga un valor incorrecto. El valor incorrecto causa una excepción de doble error, una comprobación de errores y un bloqueo del sistema.

Para obtener más información acerca de su hardware específico, siga estos pasos:

  1. Use el !cpuinfo comando para obtener información sobre la versión de la CPU.

    Aunque es posible que el valor de firma de actualización no siempre se informe de forma precisa al analizar un archivo de volcado de sucesos, el campo Update Signature suele indicar la revisión de actualización del microcódigo que se aplica a la CPU.

  2. Use el !pcitree comando para buscar los identificadores de proveedor y de dispositivo (VenDev IDS) para dispositivos de interfaz de conexión de periféricos (PCI) existentes.

    Para cada dispositivo PCI que aparece, el primer valor hexadecimal (DWORD) de 8 dígitos en cada línea es el identificador de VenDev. El identificador del proveedor es, en realidad, el segundo 4 dígitos de este valor. Por ejemplo, el primer dispositivo que se muestra tiene un identificador VenDev de 0x00141166. El identificador del dispositivo es 0x0014 y el identificador del proveedor es 0x1166. El identificador de proveedor de ServerWorks es 0x1166. Por lo tanto, esta salida procede de un procesador que se instala en una placa base que usa conjuntos de chips ServerWorks.

Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.