domingo, 29 de noviembre de 2009

Depurando pantallazos azules

En primer lugar, debemos de modificar el archivo boot.ini que se encuentra en la unidad raiz.

Los modificadores son parámetros para alterar la forma en la que inicia windows, a continuación muestro los que nos van a ser de utilidad

  • /bootlog, crea un archivo de registro donde se almacena la secuencia de arranque de windows. El archivo se guarda en el directorio raiz de la instalación de windows y se llama ntbtlog.txt.

  • /sos, nos muetra un listado de los drivers que va cargando en el arranque.


De tal forma que, nuestro boot.ini, quedará una cosa más o menos parecida a esta:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /bootlog /sos

(No copies lo anterior, es orientativo, tu sistema puede que no coincida con el anterior)

Otra forma de depurar pantallazos algo más engorrosa pero puede que más efectiva, es la que describo a continuación.

Este procedimiento es válido para analizar los archivos de volcado que windows genera al ocurrir una expceción grave en el sistema, que suelen encontrarse en %SystemRoot%\MEMORY.DMP

En primer lugar necesitamos el depurador de windows WinDbg y los símbolos de depuración para windows xp para que pueda determinar de que librería y función se trata cuando ocurre tal excepción.

Una vez nos hayamos hecho con el archivo de volcado:

  • Abrimos WinDbg

  • Cargamos volcado: "File -> Open Crash Dump"

  • Especificamos el siguiente comando para que analice el archivo: !analyze -v


Nos arroja al detalle información de la excepción ocurrida, y es ahí donde debemos determinar que función y en que librería, driver, etc, se produce el error. Para ello basta con deshabilitar/desinstalar el componete que ocasiona el error y toca probar de nuevo.

Espero os sea de utilidad.

No hay comentarios:

Publicar un comentario