¿Cómo encontrar la fuente de este BSOD? ¿Como arreglarlo?

8

Ocasionalmente (siempre en el momento menos conveniente ...) recibo este BSOD en mi PC de escritorio con Windows 7:

  Problem signature:
  Problem Event Name:   BlueScreen
  OS Version:   6.1.7601.2.1.0.256.1
  Locale ID:    1033

  Additional information about the problem:
  BCCode:   124
  BCP1: 0000000000000000
  BCP2: FFFFFA8007BBB028
  BCP3: 00000000B2000040
  BCP4: 0000000000000800
  OS Version:   6_1_7601
  Service Pack: 1_0
  Product:  256_1

  Files that help describe the problem:
  C:\Windows\Minidump\010812-16578-01.dmp
  C:\Users\al\AppData\Local\Temp\WER-37500-0.sysdata.xml

Intentar encontrar más información sobre esto parece ser inútil porque el archivo C:\Users\al\AppData\Local\Temp\WER-37500-0.sysdata.xmlno existe (la carpeta existe, pero no cualquier archivo que comience con "WER"), e intentar analizar el archivo minidump produce lo siguiente:

Bug Check Code: 0x00000124
Parameter 1:    00000000`00000000
Parameter 2:    fffffa80`07bbb028
Parameter 3:    00000000`b2000040
Parameter 4:    00000000`00000800
Causing driver: hal.dll
Address:    hal.dll+12a3b
Processor:  x64
Crash address:  ntoskrnl.exe+7cc40
CPU count:  4
Major ver:  15
Minor ver:  7601
Dump size:  283,576 

y:

Filename:       ntoskrnl.exe
Addr. in Stack: ntoskrnl.exe+18d513
From addr:      fffff800`02a18000
To addr:        fffff800`03001000
Size:           0x005e9000
Timestamp:      0x4e02aaa3
Time string:    6/22/2011 9:53:23 PM
Product name:   Microsoft® Windows® Operating System
File desc:      NT Kernel & System
File ver:       6.1.7601.17640 (win7sp1_gdr.110622-1506)
Company:        Microsoft Corporation
Full path:      C:\Windows\system32\ntoskrnl.exe        

Bueno, hal.dlly ntoskrnl.exeson parte del sistema operativo y no parece haber nada que pueda hacer para actualizar esos "controladores".

Sé que el hardware es perfecto (incluidos los voltajes de RAM en el BIOS, etc.) porque este mismo sistema exacto funciona perfectamente con Ubuntu 8y Ubuntu 10(configuración de inicio triple). El problema definitivamente está en el software del sistema, pero ¿cómo puedo saber de qué se trata?

Eterno aprendiz
fuente
1
Podríamos ayudarlo si Windows 7 fuera de código abierto ...
m0skit0
3
¿ Alguno de los pasos de [aquí] ( sevenforums.com/crash-lockup-debug-how/… ayuda?
AndrejaKo
2
@AndrejaKo Este es un gran recurso. Parece exactamente lo que he estado buscando. Vuelva a publicar como respuesta y lo aceptaré. Gracias +1 por ahora.
Eternal Learner
1
@Eternal Learner Simplemente vincular a una respuesta no se considera una respuesta aquí en SuperUser, debe seguir siendo un comentario a menos que quieran copiar todo el contenido de la respuesta a una respuesta de SuperUser. La razón principal de esto es la rotura de enlaces y los sitios web que desaparecen del ciberespacio. La segunda razón es que SuperUser no es un foro.
Moab

Respuestas:

4
  1. Instale las herramientas de depuración para Windows .
  2. Después de la instalación, abra WinDbg desde el menú de inicio.
  3. Haga clic en Archivo> Ruta del archivo de símbolos e ingrese (reemplace C: \ SymbolCache con la ruta de su elección)SRVC:\SymbolCachehttp://msdl.microsoft.com/download/symbols
  4. Haga clic en Archivo> Abrir Crashdump y abra el archivo memory.dmp en su% SystemRoot% (generalmente C: \ WINDOWS o C: \ WINNT) O el último archivo en% SystemRoot% \ Minidump si tiene los volcados completos deshabilitados.
  5. El controlador infractor se enumerará a continuación, de forma similar a esto: Probably caused by : usbhub.sys ( usbhub!UsbhTrapFatalTimeout_x9f+28 )pero puede hacer clic en el !analyze -venlace para obtener un seguimiento detallado de la pila.
Kinokijuf
fuente
Esto es bueno para los desarrolladores de controladores, no para un administrador.
Eternal Learner
@EternalLearner Pero te muestra la fuente BSOD, que es algo bueno.
kinokijuf
Sí, es algo bueno, pero ya obtengo toda esa información BlueScreenView. La única ventaja de !analyze -ves la capacidad de mostrar el código fuente si lo tengo y, dado que no soy el desarrollador ntoskrnl.exe, no me ayuda. Aparte del hecho de que está horriblemente hinchado y compromete aún más la estabilidad del sistema. Instalarlo solo se justifica cuando desarrolla controladores.
Eternal Learner
@EternalLearner Entonces me temo que es imposible obtener más información.
kinokijuf
2

Una forma mucho más simple sería usar BlueScreenView . Si observa la columna "Dirección en la pila", puede ver de dónde vino originalmente la llamada problemática. Esta es la última fila que tiene una entrada en esta columna.

Tomando el nombre del archivo del controlador, puede realizar un seguimiento del proveedor / aplicación / dispositivo al que pertenece y, por lo tanto, encontrar al culpable con una alta probabilidad.

Robert
fuente
1
BlueScreenView es exactamente donde tomé la información que publiqué en mi pregunta. La parte posterior de la pista se detiene en lo que he publicado originalmente: ntoskrnl.exe+18d513. El comentario publicado por @AndrejaKo es la mejor respuesta hasta ahora.
Eternal Learner el