이 BSOD의 출처를 찾는 방법? 고치는 방법?


8

나는 때때로 (항상 가장 편리한 순간에 ...) 내 Windows 7 데스크탑 PC 에서이 BSOD를받습니다.

  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

파일 C:\Users\al\AppData\Local\Temp\WER-37500-0.sysdata.xml이 존재하지 않기 때문에 (폴더는 존재하지만 "WER"로 시작 하는 파일 은 존재하지 않음) 미니 덤프 파일을 분석하려고하면 다음과 같은 결과가 나타납니다.

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 

과:

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        

글쎄, hal.dll그리고 ntoskrnl.exeOS의 일부이며 그 "드라이버"를 업그레이드하기 위해 내가 할 수있는 일이없는 것 같습니다.

이 동일한 정확한 시스템이 (트리플 부트 구성) Ubuntu 8과 완벽하게 작동하기 때문에 하드웨어가 완벽하다는 것을 알고 있습니다 (BIOS의 RAM 전압 포함 Ubuntu 10). 문제는 시스템 소프트웨어에 있지만 문제가 무엇인지 어떻게 알 수 있습니까?


1
Windows 7이 오픈 소스 인 경우 도움을 드릴 수 있습니다 ...
m0skit0

3
[here] ( sevenforums.com/crash-lockup-debug-how/… help) 의 단계 중 하나라도 수행 하시겠습니까?
AndrejaKo

2
@AndrejaKo 이것은 훌륭한 자료입니다. 내가 찾던 것과 정확히 같습니다. 답변으로 다시 게시 해 주시면 동의하겠습니다. 지금은 +1 감사합니다.
영원한 학습자

1
@Eternal Learner 단순히 답변에 링크하는 것은 여기서 슈퍼 유저의 답변으로 간주되지 않으며, 답변의 전체 내용을 수퍼 유저 답변으로 복사하지 않는 한 주석으로 남아 있어야합니다. 주요 원인은 링크 공간과 사이버 공간에서 사라지는 웹 사이트 때문입니다. 두 번째 이유는 수퍼 유저가 포럼이 아니기 때문입니다.
Moab

답변:


4
  1. Windows 용 디버깅 도구를 설치하십시오 .
  2. 설치 후 시작 메뉴에서 WinDbg를 엽니 다.
  3. 파일> 기호 파일 경로를 클릭하고 입력하십시오 (C : \ SymbolCache를 선택한 경로로 바꾸십시오)SRVC:\SymbolCachehttp://msdl.microsoft.com/download/symbols
  4. 파일> 크래시 덤프 열기를 클릭하고 전체 덤프를 비활성화 한 경우 % SystemRoot % (일반적으로 C : \ WINDOWS 또는 C : \ WINNT) 또는 memory.dmp 파일을 % SystemRoot % \ Minidump의 최신 파일로여십시오.
  5. 문제가있는 드라이버는 다음과 유사하게 아래에 나열 Probably caused by : usbhub.sys ( usbhub!UsbhTrapFatalTimeout_x9f+28 )되지만 !analyze -v링크를 클릭하면 자세한 스택 추적을 얻을 수 있습니다.

이것은 관리자가 아닌 드라이버 개발자에게 좋습니다.
영원한 학습자

@EternalLearner 그러나 그것은 당신에게 BSOD 소스를 보여줍니다.
kinokijuf

네, 좋은 일이지만 이미 모든 정보를 얻었습니다 BlueScreenView. 유일한 장점은 !analyze -v소스 코드가있는 경우 소스 코드를 표시하는 기능이고 개발자 ntoskrnl.exe가 아니기 때문에 도움이되지 않습니다. 끔찍하게 부풀어 오르고 시스템의 안정성을 더 손상 시킨다는 사실 외에도. 드라이버를 개발할 때만 설치하면됩니다.
영원한 학습자

@EternalLearner 그러면 추가 정보를 얻는 것이 불가능합니다.
kinokijuf

2

훨씬 간단한 방법은 BlueScreenView 를 사용하는 것 입니다. "주소의 주소"열을 보면 문제가 발생한 호출의 원래 위치를 확인할 수 있습니다. 이 열에 항목이있는 마지막 행입니다.

드라이버 파일 이름을 사용하면 자신이 속한 공급 업체 / 애플리케이션 / 장치를 역 추적 할 수 있으므로 확률이 높은 범인을 찾을 수 있습니다.


1
BlueScreenView는 내가 질문에 게시 한 정보를 정확히 가져간 곳입니다. 백 트랙은 내가 원래 게시 한 내용에서 멈 춥니 다 ntoskrnl.exe+18d513.. @AndrejaKo에 의해 게시 된 의견이 지금까지 가장 좋은 답변입니다.
영원한 학습자
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.