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 presenta lo que hace Windows cuando se produce una pantalla azul y se proporcionan algunos procedimientos recomendados para evitar y solucionar problemas de pantalla azul.
¿Qué ocurre cuando se produce un error de detención?
El sistema operativo (SO) se supervisa continuamente para comprobar que se ejecuta dentro de los parámetros esperados. Si este no es el caso, el sistema operativo llama a la función de kernel KeBugCheckEx para reiniciar para recuperarse de este escenario incorrecto. Para obtener más información, vea la función KeBugCheckEx (wdm.h). A continuación, la función KeBugCheckEx desencadena un error de detención (también conocido como comprobación de errores, pantalla azul de muerte y volcado) y reinicia el equipo.
En las secciones siguientes se usa el problema descrito en Comprobación de errores 0x50: PAGE_FAULT_IN_NONPAGED_AREA explicar lo que sucede cuando se produce un error de detención.
Ejemplo de 0x50 de error de detención
Este error de detención se produce en el escenario siguiente:
El sistema operativo está intentando hacer referencia a una parte de la memoria que debe estar disponible en la memoria de acceso aleatorio físico (RAM). Sin embargo, cuando el sistema operativo accede a esa memoria, no se encuentra la memoria y se produce un error de página.
Esto infringe los parámetros de un sistema operativo correcto. Por lo tanto, el sistema operativo llama a KeBugCheckEx para apagar el sistema operativo de forma controlada para evitar daños adicionales.
Hay tres fases para este proceso de error de detención.
Fase 1: Supervisar el sistema (en curso)
Durante esta fase, el kernel supervisa continuamente el sistema. Además, durante cada inicio, el administrador de sesiones lee la configuración de la clave HKLM\SYSTEM\CurrentControlSet\Control\CrashControl
del Registro para la configuración de volcado de memoria.
Cuando el sistema operativo detecta un estado incorrecto del sistema operativo, se llama a la función KeBugCheckEx .
Fase 2: Detener el error
Durante la fase de error de detención, el sistema operativo muestra esta pantalla de estado azul. (Este es el motivo por el que el error de detención se denomina pantalla azul).
En la captura de pantalla, puede ver el código de detención específico en el rectángulo negro 1. Este código de detención puede ayudarle a identificar el primer paso comprobando la referencia de código de comprobación de errores. En Windows, hay más de 300 códigos de detención diferentes y cada uno se documenta con detalle en el artículo de referencia.
En el rectángulo negro 2, puede ver el progreso de mover ram al archivo de página. Esta operación se basa en la configuración de CrashControl que se lee durante el arranque del sistema.
En sistemas grandes, este proceso puede tardar algún tiempo. Se puede usar un escenario específico para explicarlo.
Imagine que tiene un sistema que tiene 1024 GB de RAM. Una unidad de disco duro típica (HDD) tiene una velocidad de E/S de disco de hasta 100 MB por segundo, mientras que una unidad de estado sólido (SSD) puede lograr una velocidad de hasta 500 MB. Cuando el sistema operativo genera un volcado de memoria completo, compruebe la tabla siguiente durante el tiempo que tarda en función de la configuración del disco:
Tipo de disco | Velocidad del disco | Tiempo para escribir un volcado en segundos (minutos) |
---|---|---|
HDD | 100 MB/s | 10,485 s (~175 min) |
SSD | 500 MB/s | 2.097 s (~35 min) |
Nota:
En un sistema físico, el equipo Sistema básico de entrada-salida (BIOS) podría tener la característica Recuperación automática del sistema (ASR). Esta característica comprueba periódicamente si Windows se está ejecutando. Cuando se produce un error en la comprobación, la característica inicia un restablecimiento de energía para recuperar el sistema. Este comportamiento interrumpe el proceso de volcado de memoria porque Windows y sus servicios ya no se ejecutan durante la fase 2.
En el rectángulo negro 3, puede ver una sugerencia potencial sobre lo que estaba implicado en el bloqueo. Si el mensaje trata de un controlador o software, la comprobación de una actualización es una opción válida.
Una vez completado el proceso de mover la RAM al archivo de página, el archivo de página se marca como volcado. En el paso final, el sistema se reinicia (en función de la configuración) para completar la fase 2 y va a la fase 3.
Fase 3: Creación de volcados
Durante el arranque del sistema operativo, el proceso del administrador de sesiones (SMSS.exe) carga el archivo de página. Dado que el archivo de página se marcó como volcado de memoria, SMSS.exe extrajo el volcado del archivo de página. El proceso de arranque puede tardar más de lo esperado porque el archivo de página puede ser grande. El último paso de la fase 3 es registrar un evento en el registro de eventos del sistema, con el identificador de evento 1001, Nivel: Error y Origen: BugCheck:
Importante
Este evento también contiene un código de detención específico con los parámetros (vea rectángulo negro 1 en la imagen). Puede usar esta información en nuestra documentación pública para obtener más información sobre la comprobación de errores y su significado en la referencia de código de comprobación de errores.
Además, puede ver la ubicación del volcado de memoria (vea rectángulo negro 2 en la imagen).
Procedimientos recomendados para solucionar y evitar errores de detención
En la mayoría de los escenarios, puede usar las siguientes acciones para resolver un error de detención.
Asegúrese de que está ejecutando la revisión más reciente para el sistema operativo.
Microsoft publica revisiones en cualquier sistema operativo compatible mensualmente cada segundo martes (el ciclo de revisión). Estas revisiones contienen mejoras en cuanto a seguridad y confiabilidad. Se recomienda instalarlos poco después de la versión.
Asegúrese de que el software y los controladores están actualizados
Microsoft está trabajando estrechamente con nuestros asociados para asegurarse de que sus productos también funcionan dentro de los parámetros de un sistema operativo correcto. Cuando se notifica un error de detención a Microsoft y nuestro soporte técnico ha identificado que este error está relacionado con un controlador o software específico, Microsoft los notifica. Normalmente, esto da como resultado una actualización de su software. Por lo tanto, se recomienda mantener el software actualizado.
Considere la posibilidad de actualizar a la versión más reciente del sistema operativo.
A veces, las mejoras en Windows no se pueden enviar como parte de una actualización, sino solo como parte de una nueva versión del sistema operativo. Si ha actualizado el sistema operativo, el software y los controladores, una actualización del sistema operativo podría ser un enfoque válido.
Autoayuda a través de la referencia de código de detención
En la referencia de código de comprobación de errores, Microsoft proporciona instrucciones y recomendaciones basadas en el código de detención específico. El artículo de referencia es un excelente lugar para obtener información y una recomendación segura para comprobar el código de comprobación de errores específico. Microsoft sabe que puede ser una solución compleja y, si necesita más ayuda, abra un caso de soporte técnico con Microsoft. Asegúrese de que tiene un volcado de memoria disponible para acelerar la resolución.
Asegurarse de que el sistema operativo puede capturar un volcado de memoria
Si no se genera ningún volcado, siga esta recomendación.
Configuración de volcado de memoria recomendada
Esta recomendación depende del tamaño del sistema, ya que la RAM y el espacio en disco duro afectan directamente a nuestras recomendaciones.
Memoria de sistemas de hasta 32 GB
- Asegúrese de que el archivo de página esté establecido en RAM + 300 MB.
- Asegúrese de que el sistema está establecido en un volcado de memoria completo. Para ello, vaya a y establezca CrashDumpEnabled en 0x1.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CrashControl
Asegúrese de tener suficiente espacio en disco para el archivo Pagefile y el archivo memory.dmp .
Memoria de sistemas de más de 32 GB
- Asegúrese de que el archivo de página esté establecido en Administrado por el sistema.
- Asegúrese de que el sistema está establecido en un volcado de memoria automático. Para ello, vaya a la clave del
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CrashControl
Registro y establezca CrashDumpEnabled en 0x7.
Normalmente, un volcado de memoria del kernel es menor que 40 GB. El volcado automático, combinado con un archivo de página administrado por el sistema, intenta asegurarse de que los requisitos del disco duro se mantienen como mínimo. Todavía necesita asegurarse de que tiene suficiente espacio en disco para el archivo Pagefile y el archivo memory.dmp .
Si es necesario, puede configurar el sistema operativo para guardar el archivo de volcado %SystemRoot%\Memory.dmp en otra ubicación. Por ejemplo, puede guardar el archivo en la unidad D, que es un segundo disco duro con suficiente espacio en disco. Para ello, siga los pasos que se indican a continuación:
- Vaya a la clave del
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CrashControl
Registro. - Establezca DumpFile en d:\Memory.dmp.
Además, en sistemas grandes, asegúrese de que ASR está deshabilitado en el BIOS.