Solución de problemas avanzada para bloqueos de Windows
En este artículo se describe cómo solucionar problemas de inmovilización en equipos y servidores basados en Windows. También proporciona métodos para recopilar datos que ayudarán a los administradores o desarrolladores de software a diagnosticar, identificar y corregir estos problemas.
Nota:
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.
Se aplica a: Windows 10
Identificar el problema
- ¿Qué equipo se está congelando? Por ejemplo, el equipo afectado es un servidor físico o un servidor virtual.
- ¿Qué operación ocurrió cuando se congeló? Por ejemplo, este problema se produce cuando se cierra.
- ¿Con qué frecuencia se producen los errores? Por ejemplo, este problema se produce cada noche a las 7 p. m.
- ¿En cuántos equipos se produce esta inmovilización? Por ejemplo, todos los equipos o solo un equipo.
Solución de problemas de inmovilización
Para solucionar los problemas de inmovilización, compruebe el estado actual del equipo y siga uno de los métodos siguientes.
Para el equipo que sigue ejecutándose en un estado inmovilizado
Si el equipo físico o la máquina virtual siguen inmovilizando, use uno o varios de los métodos siguientes para solucionar problemas:
- Intente acceder al equipo a través de una conexión de escritorio remoto.
- Use una cuenta de dominio o una cuenta de administrador local para iniciar sesión en el equipo con la solución de acceso remoto del fabricante de hardware. Por ejemplo, dell remote access card (DRAC), HP Integrated Lights-Out (iLo) o ibm remote supervisor adapter (RSA).
- Pruebe el ping en el equipo. Busque paquetes eliminados y una latencia de red alta.
- Acceda a recursos compartidos administrativos, por ejemplo \\ServerName\c$.
- Presione Ctrl+Alt+Eliminar y compruebe la respuesta.
- Intente usar herramientas de administración remota de Windows. Por ejemplo, Administración de equipos, Administrador del servidor y Wmimgmt.msc.
Para el equipo que ya no está inmovilizado
Si el equipo físico o la máquina virtual se congeló, pero ahora se ejecuta en un buen estado, use uno o varios de los métodos siguientes para solucionar problemas.
Para un equipo físico
Revise los registros del sistema y de la aplicación desde el equipo que tiene el problema. Compruebe los registros de eventos para obtener el identificador de evento correspondiente:
- Registro de eventos de la aplicación: error de aplicación, que sugiere un bloqueo o un proceso del sistema pertinente
- Registros de eventos del sistema, identificadores de eventos de error de Service Control Manager para servicios críticos del sistema
- Identificadores de evento de error 2019/2020 con Srv/Server de origen
Genere un informe de diagnóstico del sistema mediante la ejecución de
perfmon /report
.
Para una máquina virtual
- Revise los registros del sistema y de la aplicación desde el equipo que tiene el problema.
- Genere un informe de diagnóstico del sistema mediante la ejecución de
perfmon /report
. - Compruebe el historial del sistema en las herramientas de supervisión de administración virtual.
Recopilación de datos para los problemas de inmovilización
Para recopilar datos de una inmovilización de servidor, compruebe la tabla siguiente y use uno o varios de los métodos sugeridos.
Tipo de equipo y estado | Método de recopilación de datos |
---|---|
Un equipo físico que se ejecuta en un estado inmovilizado | Use un archivo de volcado de memoria para recopilar datos. O bien, use el método 2, 3 o 4. Estos métodos se enumeran más adelante en esta sección. |
Un equipo físico que ya no está inmovilizado | Use el método 1, 2, 3 o 4. Estos métodos se enumeran más adelante en esta sección. Y use El monitor de grupo para recopilar datos. |
Una máquina virtual que se ejecuta en un estado inmovilizado | Hyper-V o VMware: use un archivo de volcado de memoria para recopilar datos de la máquina virtual que se ejecuta en un estado inmovilizado. XenServer: use el método 1, 2, 3 o 4. Estos métodos se enumeran más adelante en esta sección. |
Una máquina virtual que ya no está inmovilizada | Use el método 1, 2, 3 o 4. Estos métodos se enumeran más adelante en esta sección. |
Método 1: Volcado de memoria
Importante
Siga atentamente los pasos de esta sección. La modificación incorrecta del Registro puede producir graves problemas. Antes de modificarlo, realice una copia de seguridad del Registro para efectuar una restauración en caso de que surjan problemas.
Un archivo de volcado de memoria completo registra todo el contenido de la memoria del sistema cuando el equipo se detiene inesperadamente. Un archivo de volcado de memoria completo puede contener datos de procesos que se estaban ejecutando cuando se recopiló el archivo de volcado de memoria.
Si el equipo ya no está inmovilizado y ahora se ejecuta en un buen estado, siga estos pasos para habilitar el volcado de memoria para que pueda recopilar el volcado de memoria cuando se produzca de nuevo el problema de inmovilización. Si la máquina virtual sigue ejecutándose en un estado inmovilizado, siga estos pasos para habilitar y recopilar el volcado de memoria.
Nota:
Si tiene una característica de reinicio habilitada en el equipo, como la característica Reinicio automático del sistema (ASR) en equipos Compaq, deshabilíela. Esta configuración se encuentra normalmente en el BIOS. Con esta característica habilitada, si el BIOS no detecta un latido del sistema operativo, reiniciará el equipo. El reinicio puede interrumpir el proceso de volcado.
Asegúrese de que el equipo está configurado para obtener un archivo de volcado de memoria completo.
- Vaya a Ejecutar y escriba Sysdm.cply presione Entrar.
- En Propiedades del sistema, en la pestaña Opciones avanzadas, seleccioneConfiguración de>rendimiento>Avanzadas. Seleccione Cambiar para comprobar o cambiar la memoria virtual.
- Volver a Propiedades> del sistemaConfiguraciónavanzada> en Inicio y recuperación.
- En la sección Escribir información de depuración , seleccione Completar volcado de memoria.
- Seleccione Sobrescribir cualquier archivo existente.
- Asegúrese de que hay un archivo de paginación (pagefile.sys) en la unidad del sistema y que tiene al menos 100 MB sobre la RAM instalada (tamaño inicial y máximo).
- Asegúrese de que hay más espacio disponible en la unidad del sistema que la RAM física.
Para permitir que el sistema genere un archivo de volcado mediante el teclado, habilite el valor del
CrashOnCtrlScroll
Registro.Abra la Editor del Registro y, a continuación, busque las siguientes claves del Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
Create la siguiente
CrashOnCtrlScroll
entrada del Registro en las dos claves del Registro:- Nombre del valor:
CrashOnCtrlScroll
- Tipo de datos: REG_DWORD
- Valor: 1
- Nombre del valor:
Cierre la Editor del Registro y reinicie el equipo.
En algunos equipos físicos que ejecutan versiones anteriores de Windows, puede generar una interrupción no modificable (NMI) a partir de una característica de interfaz web como DRAC, iLo o RSA. Sin embargo, de forma predeterminada, esta configuración detendrá el sistema sin crear un volcado de memoria.
Nota:
Para las versiones compatibles actualmente de Windows, la clave del
NMICrashDump
Registro ya no es necesaria. Una NMI produce un error Stop que sigue a una recopilación de datos de volcado de memoria.Cuando el equipo presente el problema, mantenga presionada la tecla Ctrl derecha y presione la tecla Bloquear desplazamiento dos veces para generar un archivo de volcado de memoria.
Nota:
De forma predeterminada, el archivo de volcado se encuentra en la ruta de acceso siguiente: %SystemRoot%\MEMORY. DMP.
Método 2: Comprobación de cordura de datos
Use la Utilidad de comprobación de volcado de memoria (Dumpchk.exe) para leer un archivo de volcado de memoria. También puede comprobar que el archivo se creó correctamente y no está dañado o no es válido.
Aprenda a usar Dumpchk.exe para comprobar los archivos de volcado:
Método 3: Monitor de rendimiento
Puede usar Windows Monitor de rendimiento para examinar cómo afectan los programas que ejecuta al rendimiento del equipo, tanto en tiempo real como mediante la recopilación de datos de registro para su análisis posterior. Para crear recopilaciones de registros de seguimiento de eventos y contadores de rendimiento en sistemas locales y remotos, ejecute los siguientes comandos en un símbolo del sistema como administrador:
Logman create counter LOGNAME_Long -u DOMAIN\USERNAME * -f bincirc -v mmddhhmm -max 500 -c "\\COMPUTERNAME\LogicalDisk(*)\*" "\\COMPUTERNAME\Memory\*" "\\COMPUTERNAME\Network Interface(*)\*" "\\COMPUTERNAME\Paging File(*)\*" "\\COMPUTERNAME\PhysicalDisk(*)\*" "\\COMPUTERNAME\Process(*)\*" "\\COMPUTERNAME\Redirector\*" "\\COMPUTERNAME\Server\*" "\\COMPUTERNAME\System\*" "\\COMPUTERNAME\Terminal Services\*" "\\COMPUTERNAME\Processor(*)\*" "\\COMPUTERNAME\Cache\*" -si 00:05:00
Logman create counter LOGNAME_Short -u DOMAIN\USERNAME * -f bincirc -v mmddhhmm -max 500 -c "\\COMPUTERNAME\LogicalDisk(*)\*" "\\COMPUTERNAME\Memory\*" "\\COMPUTERNAME\Network Interface(*)\*" "\\COMPUTERNAME\Paging File(*)\*" "\\COMPUTERNAME\PhysicalDisk(*)\*" "\\COMPUTERNAME\Process(*)\*" "\\COMPUTERNAME\Redirector\*" "\\COMPUTERNAME\Server\*" "\\COMPUTERNAME\System\*" "\\COMPUTERNAME\Terminal Services\*" "\\COMPUTERNAME\Processor(*)\*" "\\COMPUTERNAME\Cache\*" -si 00:00:10
A continuación, puede iniciar o detener el registro ejecutando los siguientes comandos:
logman start LOGNAME_Long / LOGNAME_Short
logman stop LOGNAME_Long / LOGNAME_Short
El registro de Monitor de rendimiento se encuentra en la ruta de acceso: C:\PERFLOGS.
Otros métodos para recopilar datos
Uso del volcado de memoria para recopilar datos del equipo físico que se ejecuta en un estado inmovilizado
Advertencia
Siga atentamente los pasos de esta sección. La modificación incorrecta del Registro puede producir graves problemas. Antes de modificarlo, realice una copia de seguridad del Registro para efectuar una restauración en caso de que surjan problemas.
Si el equipo físico sigue ejecutándose en un estado inmovilizado, siga estos pasos para habilitar y recopilar el volcado de memoria:
Asegúrese de que el equipo está configurado para obtener un archivo de volcado de memoria completo y de que puede acceder a él a través de la red.
Nota:
Si no es posible acceder al equipo afectado a través de la red, intente generar un archivo de volcado de memoria a través de NMI. Es posible que el resultado de la acción no recopile un archivo de volcado de memoria si algunas de las siguientes opciones no están calificadas.
Intente acceder al escritorio del equipo por cualquier medio.
Nota:
En caso de que no sea posible acceder al sistema operativo, intente acceder de forma remota a Editor del Registro en el equipo. A continuación, puede comprobar el tipo de archivo de volcado de memoria y el archivo de página con el que está configurado actualmente el equipo.
Desde un equipo remoto que esté preferiblemente en la misma red y subred, vaya a Registro Editor>Conectar registro de red. A continuación, conéctese al equipo afectado y compruebe la siguiente configuración:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\CrashDumpEnabled
Asegúrese de que la entrada del Registro CrashDumpEnabled es 1.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\NMICrashDump
En algunos servidores físicos, si la entrada del
NMICrashDump
Registro existe y su valor es 1, puede aprovechar el NMI del proveedor de administración remota, como DRAC, iLo y RSA.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PagingFiles and ExistingPageFiles
Si el valor de la entrada del
Pagefile
Registro está administrado por el sistema, el tamaño no se reflejará en el Registro. Por ejemplo:?:\pagefile.sys)
Si se personaliza el archivo de página, el tamaño se reflejará en el Registro, como
?:\pagefile.sys 1024 1124
. En este ejemplo, 1024 es el tamaño inicial y 1124 es el tamaño máximo.Nota:
Si el tamaño no se refleja en el Registro, intente acceder a un recurso compartido administrativo donde se encuentra el archivo de página. Por ejemplo, \\ServerName\C$.
Asegúrese de que hay un archivo de paginación (pagefile.sys) en la unidad del sistema del equipo y que tiene al menos 100 MB sobre la RAM instalada.
Asegúrese de que hay más espacio libre en las unidades de disco duro del equipo que la RAM física.
Habilite el valor del Registro CrashOnCtrlScroll en el equipo para permitir que el sistema genere un archivo de volcado mediante el teclado.
Desde un equipo remoto preferiblemente en la misma red y subred, vaya a Registro Editor>Conectar registro de red. Conéctese al equipo afectado y busque las siguientes claves del Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\Parameters
Create la siguiente
CrashOnCtrlScroll
entrada del Registro en las dos claves del Registro:Nombre del valor:
CrashOnCtrlScroll
Tipo de datos: REG_DWORD Valor: 1Cierre la Editor del Registro y reinicie el equipo.
Cuando el equipo presente el problema, mantenga presionada la tecla Ctrl derecha y presione la tecla Bloqueo de desplazamiento dos veces para generar un volcado de memoria.
Nota:
De forma predeterminada, el archivo de volcado de memoria se encuentra en la ruta de acceso %SystemRoot%\MEMORY. DMP.
Uso del Monitor de grupo para recopilar datos del equipo físico que ya no está inmovilizado
El Monitor de grupo muestra el número de asignaciones y bytes pendientes de asignación por tipo de grupo y la etiqueta que se pasa a las llamadas de ExAllocatePoolWithTag.
Para obtener más información, vea Uso de PoolMon para buscar una pérdida de memoria Kernel-Mode y ejemplos de PoolMon.
Uso del volcado de memoria para recopilar datos de la máquina virtual que se ejecuta en un estado inmovilizado
Use uno de los métodos siguientes para la aplicación en la que se ejecuta la máquina virtual.
Microsoft Hyper-V
También puede usar la característica NMI integrada a través de un cmdlet Debug-VM para depurar y obtener un volcado de memoria.
Para depurar las máquinas virtuales en Hyper-V, ejecute el siguiente cmdlet en Windows PowerShell:
Debug-VM -Name "VM Name" -InjectNonMaskableInterrupt -ComputerName Hostname
Vmware
Puede usar instantáneas de VMware o el estado de suspensión y extraer un archivo de volcado de memoria equivalente a un archivo de volcado de memoria completo. Use la herramienta Checkpoint To Core (vmss2core) de VMware para convertir archivos de estado de suspensión (.vmss
) e instantáneas (.vmsn
) en un archivo de volcado de memoria. A continuación, analice el archivo mediante las herramientas de depuración estándar de Windows.
Nota:
Al trabajar con Soporte técnico de Microsoft, debe usar la herramienta Checkpoint To Core (vmss2core) de VMware para convertir instantáneas de VMware en un archivo de volcado antes de cargarlas en Microsoft. Si experimenta algún problema con la conversión de instantáneas, póngase en contacto con VMware para obtener soporte técnico.
Citrix XenServer
El proceso de volcado de memoria se produce presionando la combinación de teclado Ctrl+Bloqueo de desplazamiento+Bloqueo de desplazamiento. Para obtener más información, vea Método 1 de Cómo desencadenar un volcado de memoria desde una máquina virtual Windows que se ejecuta en XenServer desde Citrix.
Limitaciones de espacio en la unidad del sistema en Windows Server
En windows Server, es posible que no tenga suficiente espacio libre en disco para generar un archivo de volcado de memoria completo en el volumen del sistema.
Hay una segunda opción si la unidad del sistema no tiene espacio suficiente. Puede usar la entrada del DedicatedDumpFile
Registro. Para obtener más información, vea Configurar la ruta de acceso de destino para un volcado de memoria.
Para obtener más información, consulte Uso del valor del Registro DedicatedDumpFile para superar las limitaciones de espacio en la unidad del sistema.
Aviso de declinación de responsabilidades sobre la información de contacto de terceros
Microsoft proporciona información de contacto de otros proveedores para ayudarle a encontrar información adicional sobre este tema. Dicha información de contacto puede cambiar sin notificación previa. Microsoft no garantiza la precisión de esta información de contacto de terceros.
Aviso de declinación de responsabilidades sobre la información de terceros
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.