Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se proporciona una solución a un 0x0000007F STOP, 0x00000008 mensaje de error en el equipo debido a un error de procesador específico. Este mensaje de error se puede mostrar cuando se produce un error de un solo bit en el registro ESP de un procesador que se ejecuta en el equipo.
Número de KB original: 842465
Síntomas
En un equipo que ejecuta uno o varios procesadores Intel Xeon, o que ejecuta otros procesadores, Windows puede mostrar un mensaje de error Detener similar al ejemplo siguiente:
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 de microcódigo que no aplique el sistema básico de entrada/salida (BIOS) del equipo.
Están dañados o defectuosos.
Funcionan fuera de sus intervalos especificados para temperatura, potencia u otras condiciones.
Solución
Para resolver este problema, use uno de los métodos de solución de problemas siguientes.
Método 1: determinar si el procesador ejecuta la revisión de producción de la actualización de microcódigo
Una actualización de microcódigo corrige errores o erratas en la lógica implementada internamente de un procesador. Las actualizaciones de microcódigo no se pueden almacenar permanentemente en el propio procesador y deben cargarse en el procesador cada vez que se inicie el equipo. El BIOS del equipo o el controlador Update.sys pueden aplicar actualizaciones de microcódigo.
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:
Descargue la Utilidad de identificación del procesador Intel.
Instale y ejecute la Utilidad de identificación del procesador Intel en el equipo que experimenta síntomas.
Anote la siguiente información de CPU para cada procesador:
- Familia de CPU
- Modelo de CPU
- Ejecución paso a paso de CPU
- Revisión de CPU
Los valores familia de CPU, modelo de CPU y paso a paso de CPU identifican el tipo específico de procesador. El valor de revisión de CPU identifica la revisión de la actualización de microcódigo que se aplica.
Póngase en contacto con el fabricante del equipo para determinar si la revisión de la actualización de microcódigo es la revisión más actual que está disponible para un procesador determinado. Si la revisión no es la más actual, pida al fabricante del equipo un BIOS actualizado que aplique la revisión de actualización de microcódigo más actual.
Los síntomas que se describen en este artículo se han observado con más frecuencia en procesadores Intel Xeon que tienen los valores de familia de CPU, modelo de CPU y paso a paso de CPU de 15, 2 y 9, respectivamente, y que están instalados en placas base que usan conjuntos de chips ServerWorks. (La familia de CPU, el modelo de CPU y los valores hexadecimales paso a paso de CPU son F, 2 y 9 respectivamente). Estos procesadores requieren un valor de revisión de 0x18 o posterior para funcionar correctamente. (0x18 es equivalente a un valor decimal de 24).
Un valor de revisión de 0 indica que el BIOS del equipo no tiene la actualización correcta de microcódigo para los procesadores instalados en el equipo. Debe actualizar el BIOS con una revisión de actualización de microcódigo que admita los procesadores que está usando.
Intel recomienda aplicar 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 defectuoso
Si los procesadores instalados en los equipos afectados tienen aplicada la revisión de actualización de microcódigo de producción y los síntomas descritos en este artículo no se producen en todos los equipos del mismo modelo que ejecutan los mismos procesadores, los procesadores pueden ser defectuosos.
Para determinar si un procesador está dañado o defectuoso, mueva el procesador a un equipo que no experimenta síntomas.
Advertencia
Si cambia los procesadores, siga las instrucciones proporcionadas por el fabricante del equipo o póngase en contacto con técnicos de hardware adecuados para cambiar los procesadores.
Si los síntomas continúan teniendo lugar 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 teniendo lugar en el equipo original con el procesador de reemplazo, pero se producen en el otro equipo con el procesador original, es probable que el problema 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 ese procesador, mueva todos los procesadores al otro equipo. Si los resultados indican que uno o varios de estos procesadores pueden ser defectuosos, mueva los procesadores uno a uno para determinar el procesador o los procesadores que pueden ser defectuosos.
Método 3: Determinar si un procesador funciona fuera de un intervalo especificado de condiciones ambientales
La temperatura ambiente excesiva, la mala ventilación o la acumulación de polvo pueden provocar que los componentes electrónicos, como los procesadores, se comporten de forma errática. Los ventiladores incorrectos o los pasajes de aire bloqueados pueden causar problemas de ventilación. Si el interior o los pasajes de aire del ordenador son polvorientos, o si el equipo muestra 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 funcionen correctamente y que los pasajes del aire no estén obstruido. Además, asegúrese de que la habitación donde se encuentra el ordenador está adecuadamente ventilada. La temperatura de la sala debe estar en el intervalo de funcionamiento especificado por el fabricante del equipo.
Voltaje superior o inferior al especificado, o que fluctúa, puede hacer que los procesadores y otros componentes electrónicos se comporten de forma errática. Voltaje de alimentación principal incorrecto o incoherente, una fuente de alimentación sobrecargada o que funciona incorrectamente en el equipo, o un circuito de placa base que funciona incorrectamente puede provocar un voltaje incorrecto o incoherente que se suministra al procesador. Póngase en contacto con los técnicos adecuados para comprobar si alguno de estos problemas puede ser la causa de los síntomas.
Más información
El registro ESP también se conoce como registro de puntero de pila. Una pila es una estructura de datos en 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 variables que usan esas 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 apuntar 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 error doble.
Para determinar si el error Stop es el resultado de un error de un solo bit en el registro esp, siga estos pasos:
Instale las herramientas de depuración de Microsoft para Windows.
Ejecute la herramienta WinDbg, seleccione Archivo, seleccione Abrir volcado de memoria para buscar el archivo de volcado de memoria que contiene la información de detención del error y, a continuación, seleccione Aceptar.
Ejecute el
!analyze -v
comando para obtener un análisis automatizado del archivo de volcado de memoria.Examine la salida del
!analyze -v
comando para ver si la salida muestra una condición de error doble. Si existe una condición de error doble, ejecute el comando para mostrar el.tss 28
estado del sistema en el momento del error doble. Por lo general, este valor está relativamente cerca del valor del registro EBP.Ejecute el
!thread
comando para ver el intervalo de pila del subproceso actual. Normalmente, se produce una excepción de doble error cuando el valor del registro ESP está fuera del intervalo de direcciones que están reservados para la pila para el subproceso actual.Cuando se ejecuta este subproceso concreto, el valor de registro esp debe estar siempre entre el valor base de pila (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 está entre el valor base de pila y el valor Límite).
También puede comprobar los valores del intervalo de pila ejecutando el
!pcr
comando .El
NtTib.StackLimit
valor representa el límite inferior del intervalo de pila. ElNtTib.StackBase
valor representa un valor reciente de ESP. ElNtTib.StackBase
valor se puede comparar con el valor actual del registro ESP para ayudar a identificar si hay un error de un solo bit en el valor de registro esp actual.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 estará cerca del valor del puntero de pila en el registro ESP, excepto para el error de un solo bit. Este comando muestra con frecuencia el bit de orden superior único que contiene el error, especialmente cuando el error se muestra en formato binario.Si omite los dígitos inferiores y menos significativos, la diferencia de un solo bit entre los registros ESP y EBP es 00000000 00001000 0000000 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 provoca una excepción de error doble, una comprobación de errores y un bloqueo del sistema.
Para obtener más información sobre el hardware específico, siga estos pasos:
Use el
!cpuinfo
comando para obtener información de versión de CPU.Aunque es posible que el valor actualizar firma no siempre se notifique con precisión al analizar un archivo de volcado de memoria, el campo Actualizar firma suele indicar la revisión de actualización de microcódigo que se aplica a la CPU.
Use el
!pcitree
comando para buscar los identificadores de proveedor y dispositivo (Id. de VenDev) para los dispositivos existentes de la interfaz de conexión periférica (PCI).Para cada dispositivo PCI que aparece, el primer valor hexadecimal de 8 dígitos (DWORD) en cada línea es el identificador de VenDev. El identificador del proveedor es realmente los 4 dígitos de este valor. Por ejemplo, el primer dispositivo que aparece tiene un identificador de VenDev de 0x00141166. El identificador de dispositivo es 0x0014 y el identificador de proveedor se 0x1166. El identificador de proveedor de ServerWorks es 0x1166. Por lo tanto, esta salida procede de un procesador instalado 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.