Análisis de un archivo de volcado de User-Mode

Este tema incluye:

Análisis de un archivo de volcado de User-Mode con WinDbg

WinDbg puede analizar los archivos de volcado de memoria en modo de usuario. El procesador o la versión de Windows en la que se creó el archivo de volcado de memoria no necesita coincidir con la plataforma en la que se ejecuta WinDbg.

Instalación de archivos de símbolos

Antes de analizar el archivo de volcado de memoria, deberá acceder a los archivos de símbolos de la versión de Windows que generó el archivo de volcado. El depurador usará estos archivos para analizar el archivo de volcado. Para obtener información sobre cómo trabajar con el servidor de símbolos, vea Símbolos públicos de Microsoft.

También tendrá que instalar todos los archivos de símbolos para el proceso en modo de usuario, ya sea una aplicación o un servicio del sistema, que hizo que el sistema generara el archivo de volcado. Si usted escribió este código, los archivos de símbolos deberían haberse generado cuando se compiló y vinculó el código. Si se trata de código comercial, compruebe el CD-ROM del producto o póngase en contacto con el fabricante del software para ver estos archivos de símbolos concretos.

Inicio de WinDbg

Para analizar un archivo de volcado, inicie WinDbg con la opción de línea de comandos -z :

windbg -ySymbolPath-iImagePath-zDumpFileName

La opción -v (modo detallado) también es útil. Para obtener una lista completa de las opciones, consulta WinDbg Command-Line Options.

Si WinDbg ya se está ejecutando y está en modo inactivo, puede abrir un volcado de memoria seleccionando el archivo | Abra el comando de menú Volcado de memoria o presione la tecla de método abreviado CTRL+D. Cuando aparezca el cuadro de diálogo Abrir volcado de memoria, escriba la ruta de acceso completa y el nombre del archivo de volcado de memoria en el cuadro de texto Nombre de archivo o use el cuadro de diálogo para seleccionar la ruta de acceso y el nombre de archivo adecuados. Cuando se haya elegido el archivo adecuado, seleccione Abrir.

También puede abrir un archivo de volcado después de que el depurador se ejecute mediante el comando .opendump (Archivo de volcado de memoria abierto), seguido de g (Go).

Es posible depurar varios archivos de volcado al mismo tiempo. Esto se puede hacer mediante la inclusión de varios modificadores -z en la línea de comandos (cada uno seguido de un nombre de archivo diferente) o mediante .opendump para agregar archivos de volcado adicionales como destinos del depurador. Para obtener información sobre cómo controlar una sesión de varios destinos, consulte Depuración de varios destinos.

Los archivos de volcado generalmente terminan con la extensión .dmp o .mdmp. Puede usar recursos compartidos de red o nombres de archivo de convención de nomenclatura universal (UNC) para el archivo de volcado de memoria.

También es habitual que los archivos de volcado se empaquen en un archivo CAB. Si especifica el nombre de archivo (incluida la extensión .cab) después de la opción -z o como argumento para un comando .opendump , el depurador puede leer los archivos de volcado directamente fuera del CAB. Sin embargo, si hay varios archivos de volcado almacenados en un solo CAB, el depurador solo podrá leer uno de ellos. El depurador no leerá ningún archivo adicional del CAB, incluso si eran archivos de símbolos o ejecutables asociados al archivo de volcado de memoria.

Análisis de un archivo de volcado de usuario completo

El análisis de un archivo de volcado de usuario completo es similar al análisis de una sesión de depuración activa. Consulte la sección Referencia de comandos del depurador para obtener más información sobre qué comandos están disponibles para depurar archivos de volcado de memoria en modo de usuario.

Análisis de archivos minivolcados

El análisis de un archivo minivolcado de modo de usuario se realiza de la misma manera que un volcado de usuario completo. Sin embargo, dado que se ha conservado mucha menos memoria, es mucho más limitado en las acciones que puede realizar. Los comandos que intentan acceder a la memoria más allá de lo que se conserva en el archivo minivolcado no funcionarán correctamente.

Técnicas adicionales

Para conocer las técnicas que se pueden usar para leer tipos específicos de información de un archivo de volcado de memoria, vea Extraer información de un archivo de volcado de memoria.

Análisis de un archivo de volcado de User-Mode con CDB

CDB puede analizar los archivos de volcado de memoria en modo de usuario. El procesador o la versión de Windows en la que se creó el archivo de volcado de memoria no necesita coincidir con la plataforma en la que se ejecuta la CDB.

Instalación de archivos de símbolos

Antes de analizar el archivo de volcado de memoria, deberá acceder a los archivos de símbolos de la versión de Windows que generó el archivo de volcado. El depurador usará estos archivos para analizar el archivo de volcado. Para obtener información sobre cómo trabajar con el servidor de símbolos, consulte Símbolos públicos de Microsoft.

También tendrá que instalar todos los archivos de símbolos para el proceso en modo de usuario, ya sea una aplicación o un servicio del sistema, que hizo que el sistema generara el archivo de volcado. Si usted escribió este código, los archivos de símbolos deberían haberse generado cuando se compiló y vinculó el código. Si se trata de código comercial, compruebe el CD-ROM del producto o póngase en contacto con el fabricante del software para ver estos archivos de símbolos concretos.

Inicio de CDB

Para analizar un archivo de volcado, inicie CDB con la opción de línea de comandos -z :

cdb -ySymbolPath-iImagePath-zDumpFileName

La opción -v (modo detallado) también es útil. Para obtener una lista completa de las opciones, consulte CdB Command-Line Opciones.

También puede abrir un archivo de volcado después de que el depurador se ejecute mediante el comando .opendump (Archivo de volcado de memoria abierto), seguido de g (Go). Esto le permite depurar varios archivos de volcado de memoria al mismo tiempo.

Es posible depurar varios archivos de volcado al mismo tiempo. Esto se puede hacer mediante la inclusión de varios modificadores -z en la línea de comandos (cada uno seguido de un nombre de archivo diferente) o mediante .opendump para agregar archivos de volcado adicionales como destinos del depurador. Para obtener información sobre cómo controlar una sesión de varios destinos, consulte Depuración de varios destinos.

Los archivos de volcado generalmente terminan con la extensión .dmp o .mdmp. Puede usar recursos compartidos de red o nombres de archivo de convención de nomenclatura universal (UNC) para el archivo de volcado de memoria.

También es habitual que los archivos de volcado se empaquen en un archivo CAB. Si especifica el nombre de archivo (incluida la extensión .cab) después de la opción -z o como argumento para un comando .opendump , el depurador puede leer los archivos de volcado directamente fuera del CAB. Sin embargo, si hay varios archivos de volcado almacenados en un solo CAB, el depurador solo podrá leer uno de ellos. El depurador no leerá ningún archivo adicional del CAB, incluso si son archivos de símbolos o ejecutables asociados al archivo de volcado de memoria.

Análisis de un archivo de volcado de usuario completo

El análisis de un archivo de volcado de usuario completo es similar al análisis de una sesión de depuración activa. Consulte la sección Referencia de comandos del depurador para obtener más información sobre qué comandos están disponibles para depurar archivos de volcado de memoria en modo de usuario.

Análisis de archivos minivolcados

El análisis de un archivo minivolcado de modo de usuario se realiza de la misma manera que un volcado de usuario completo. Sin embargo, dado que se ha conservado mucha menos memoria, es mucho más limitado en las acciones que puede realizar. Los comandos que intentan acceder a la memoria más allá de lo que se conserva en el archivo minivolcado no funcionarán correctamente.

Técnicas adicionales

Para conocer las técnicas que se pueden usar para leer tipos específicos de información de un archivo de volcado de memoria, vea Extraer información de un archivo de volcado de memoria.