Archivos de volcado de memoria (Dump Files)

En cuanto ocurre el error STOP se muestra en pantalla información que nos ayudará en nuestro análisis del problema. De forma predeterminada, además, Windows server enviará la información hacia el archivo de paginación de la unidad del sistema. En cuanto se reinicie el sistema en modo normal o seguro lo que hará es utilizar la información que ha escrito en el archivo de paginación para crear un archivo de volcado de memoria en la unidad del sistema o en la carpeta de Minidump que cuelga de la misma. El análisis de estos archivos puede proporcionarnos valiosa información sobre la causa de un problema y permitirnos además un análisis fuera de línea con la ayuda de las herramientas de análisis de otro equipo.


Configurar los volcados de memoria


Podemos configurar el sistema para que genere uno de los tres distintos tipos de archivos de volcado:


  • Archivos de volcado de memoria pequeños: más conocidos como ‘minidumps’, estos archivos contienen la mínima información. Se escriben al disco rápidamente, con lo que minimiza el tiempo de detención del servidor al permitirle reiniciar más pronto.
  • Archivos de volcado de memoria del núcleo: Graba los contenidos de la memoria del núcleo. Estos requieren un archivo de paginación más grande en el dispositivo de arranque y tarda más en crearse cuando ocurre un error. Sin embargo, grabando significativamente más información  y muy útil cuando necesitamos realizar un análisis minucioso.
  • Archivo de volcado de memoria completa: graba el contenido entero de la memoria física cuando ocurrió el STOP error. El tamaño de un archivo completo de volcado de memoria será tan grande como el tamaño de memoria física instalada en el momento del error. Esta opción no está disponible en equipos con más de 2GB de RAM.

De forma predeterminada, Windows Server 2003 está configurado para crear un archivo de volcado de memoria completo. Podemos elegir la ubicación de los archivos dump mediante el icono system del panel de control. Predeterminadamente los archivos pequeños en la carpeta minidump de la unidad del sistema, mientras los del núcleo y completa se guardarán en como memory.dmp en la ruta de la unidad del sistema.


Los servidores que utilizan PAE (Physical Address Extensions) sólo pueden crear archivos de volcado de memoria pequeños y de núcleo. PAE habilita a los equipos x86 que ejecutan Windows Server Enterprise a acceder hasta 32GB de memoria mediante el modificador /PAE en el archivo boot.ini, mientras en la DataCenter supera estos 32GB tanto como la plataforma hardware le permita.


Configurando los archivos de volcado pequeños


Un archivo de volcado pequeño contiene la mínima información, pero al mismo tiempo ocupa poco espacio de disco: 64KB en sistemas 32 bits y 128KB en 64 bits, siendo su formato idéntico en ambos. De forma predeterminada los archivos se guardan en la carpeta raíz_del_sistema\Minidump.


Windows Server 2003 siempre crea un minidump cuando sucede un stop error, aún si se ha elegido un volcado de memoria del núcleo o completa desde las opciones. Uno de los servicios que usan este archivo de volcado pequeño es el Informe de errores. Este servicio lee los contenidos del minidump para ayudar a diagnosticar lo que causa errores de stop.


Un minidump graba un conjunto de información que puede identificar la causa del stop inesperado del sistema, entre ella:


  • Información del mensaje de error: Número de error y los parámetros asociados.
  • Lista de controladores en ejecución: Módulos cargados en memoria cuando ocurrió el error. Nombre del archivo, fecha, versión, tamaño y desarrollador.
  • Información de contexto del procesador para el proceso que se ha detenido: Estado del hardware y del procesador, contadores de rendimiento, información de paquete multiprocesador, información de llamada a procedimiento suspendida y interrupciones.
  • Información de contexto del núcleo para el proceso que se ha detenido: Compensación de la tabla de directorios, número del marco de página, aquéllo que describe el estado de cada página física en memoria.
  • Información de contexto del núcleo para el hilo que se ha detenido: Registros y niveles de solicitud de interrupción, y también punteros hacia las estructuras de datos del sistema operativo.
  • Información de la pila de llamadas en modo núcleo para el hilo que se ha detenido: Una serie de ubicaciones de memoria y el puntero a la ubicación inicial.

Un minidump requiere un archivo de paginación de al menos de 2 MB en la unidad/volumen de arranque. El sistema operativo guarda cada minidump con un nombre único cada vez que ocurre un stop error. En el nombre se incluye la fecha, por ejemplo Mini02072008-01.dmp, el primer minidump generado en 7 de febrero de 2008.


Estos archivos son útiles cuando el espacio está escaso o si disponemos de una conexión lenta para el envío de información a personal de soporte. Esto hace que no contenga información que no corresponda directamente al hilo que se estaba ejecutando cuando ocurrió el problema.


Para configurar que sólo realice estos archivos minidump

  1. Doble clic en sistema en el panel de control, después clic en la pestaña Avanzado.
  2. En Inicio y recuperación, configuración.
  3. En la casilla escribir información de depuración, seleccionamos volcado de memoria pequeña(64KB).
  4. Clic dos veces en Aceptar y reiniciamos el sistema si se nos pregunta.

De forma predeterminada Windows Server 2003 guarda minidumps en la raíz_del_sistema\Minidump. Podemos cambiar la ruta escribiendo una nueva en la casilla de ‘Archivo de volcado:’ desde la ventana de configuración de los volcados.



Configurar volcados de memoria del kernel


De forma predeterminada Windows Server 2003 crea volcados de memoria del núcleo. Estos archivos son de un tamaño intermedio donde se registra sólo la memoria del núcleo,  que pueden ocupar varios megas en el disco. Estos volcados tardan más que los volcados pequeños, lo que incrementa la duración de la parada del servidor cuando falla el sistema. En la mayoría de sistemas este incremento es mínimo. Los archivos de volcado del núcleo contienen información adicional que nos puede asistir en la solución del problema. En cuanto ocurre un stop error Windows Server 2003 guarda un volcado de memoria del núcleo con el nombre de ruta_del_sistema\memory.dmp y a la vez un volcado de memoria pequeño en la carpeta ruta_del_sistema\Minidump.


Observación: Cuando depuramos Windows Server 2003, es muy útil conocer el rango de memoria que ocupa el núcleo para identificar más fácilmente componentes en ejecución en dicho espacio. En los sistemas de 32bits ocupa desde 0x80000000 a 0xFFFFFFFF, mientras que en los de 64bits desde 0x6fc0000000000000 hasta 0xFFFFFFFF00000000.


Un volcado del núcleo solo registra información de memoria del núcleo, con lo que se agiliza el proceso de creación del archivo de volcado. No incluye memoria sin uso o aún en uso, que lo sea por programas en modo usuario. Sólo la memoria que utilizada por el ejecutivo, núcleo, HAL y la caché de sistema, además adicionalmente la cola de memoria no paginada usada por controladores en modo núcleo y otras rutinas en modo núcleo.


El tamaño del archivo varía, aunque siempre es inferior a la memoria del sistema. Cuando Windows Server 2003 crea el archivo de volcado primero registra la información en el archivo de paginación. Por tanto, el archivo de paginación puede crecer hasta un tamaño igual a la memoria física. Finalmente, la información del volcado se extrae desde el archivo de paginación al archivo de volcado propiamente dicho. Para asegurarnos de que tenemos suficiente espacio libre, hemos de comprobar que la unidad del sistema tenga al menos tanto espacio libre como el tamaño de memoria física de la que disponemos. instalada, por si el archivo de paginación llegara a ese tamaño.


En la mayoría de los casos, un volcado del núcleo es suficiente para la resolución de errores stop, contiene más información que un volcado pequeño y es menor en tamaño que un volcado completo. Omite ciertas partes de la memoria que probablemente no están implicadas en el error. Sin embargo hay ocasiones en que se necesitará un volcado completo, por lo que hemos de configurarlo específicamente e intentar reproducir el error.


Para configurar que realice estos archivos de volcado del núcleo

  1. Doble clic en sistema en el panel de control, después clic en la pestaña Avanzado.
  2. En Inicio y recuperación, configuración.
  3. En la casilla escribir información de depuración, seleccionamos volcado de memoria del núcleo.
  4. Clic dos veces en Aceptar y reiniciamos el sistema si se nos pregunta.

De forma predeterminada Windows Server 2003 guarda los volcados de kernel en la raíz_del_sistema\Memory.dmp. Podemos cambiar la ruta escribiendo una nueva en la casilla de ‘Archivo de volcado:’ desde la ventana de configuración de los volcados.


Configurando archivos de volcado completo


Un archivo de volcado completo contiene todo lo que se encuentra en la memoria física cuando ocurre un error de Stop. Esto incluye la información de un archivo de volcado del núcleo, más la memoria en modo-usuario. Por tanto, podemos examinarlo para ver los contenidos de la memoria contenida dentro de las aplicaciones, aunque es raramente necesario o factible en la resolución de problemas de aplicaciones.


Si elegimos el volcado completo, debemos tener espacio suficiente en la partición de la unidad del sistema para guardar el contenido de la memoria de la RAM física. Además, una archivo de paginación igual o más grande que el tamaño de esa RAM. En el caso de los Itanium normalmente se requiere más espacio en disco que en los x86.


En cuanto un error de stop se produce el sistema guarda el archivo de volcado como ruta_del_sistema\Memory.dmp y a la vez un volcado de memoria pequeño en la carpeta ruta_del_sistema\Minidump.


Para configurar que realice estos archivos de volcado de completo

  1. Doble clic en sistema en el panel de control, después clic en la pestaña Avanzado.
  2. En Inicio y recuperación, configuración.
  3. En la casilla escribir información de depuración, seleccionamos volcado de memoria completa. 
  4. Clic dos veces en Aceptar y reiniciamos el sistema si se nos pregunta.

De forma predeterminada Windows Server 2003 guarda los volcados completos en la raíz_del_sistema\Memory.dmp. Podemos cambiar la ruta escribiendo una nueva en la casilla de ‘Archivo de volcado:’ desde la ventana de configuración de los volcados.


(De forma predeterminada cada archivo de volcado del núcleo o completo borra el anterior existente. Puede cambiarse desmarcando la casilla de sobrescribir cualquier archivo existente. Aunque también podemos cambiar de lugar el archivo creado para que no se sobrescriba.)


volcadomemoria

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>