윈도우10 블루스크린 DRIVER_POWER_STATE_FAILURE 해결 후기(방법)

카테고리 없음2019. 9. 19. 21:31

제가 겪은 윈도우 10 블루스크린 증상과 디버깅, 해결 방법에 대해 간략히 기록 남기려고 합니다.

 

저는 한성컴퓨터 X57K BOSSMONSTER Lv.77 제품을 사용 중입니다. 구입한지 3년이 다되가는 것 같은데 정확히 기억은 안나지만.. 구입하고.. 몇 개월이 지난 시점부터 컴퓨터가 갑자기 멈추고.. 몇 분 정도 기다리면 블루스크린이 발생하는 문제가 생긴 것 같습니다.

블루스크린의 중지 코드를 보면 DRIVER_POWER_STATE_FAILURE였습니다. 제가 나름 컴퓨터에 대한 지식은 가지고 있다고 생각했는데 이런 문제는 처음이었고 해결이 쉽지 않았습니다. 녹스로 게임을 할 때 자주 생겨서 녹스의 문제인가 싶어서 문제가 발생할 때마다 그냥 재부팅을 했었습니다. 그렇게 아마 2년이 넘게 참아오며 살았었는데 근래들어서 강제 재부팅으로 인해 안드로이드 스튜디오 등의 문제가 생겨서.. 해결을 해봐야겠다 마음을 먹었습니다.

 

안드로이드 프로그래밍 과정에서 문제가 생기면 디버깅을 할 줄은 아는데.. 윈도우는 어떻게 해야할지 참 난감했습니다.

하지만 따라하니까 되긴 하더라구요 ㅎㅎ 아래의 방법을 참고해주세요.

시스템 속성 > 고급 > 시작 및 복구에 설정 버튼이 있습니다. 클릭해주세요.

그러면 위의 창이 나옵니다. 시스템 오류 칸을 봐주세요. 저는 윗처럼 설정되어 있더라구요. 블루스크린 등의 문제가 생기면 문제에 관한 파일이 자동으로 생성이 됩니다. 저는 C:\Windows\MEMORY.DMP 경로에 생성되더라구요. 생성된 덤프 파일의 용량은 약 3.32GB였습니다. 역시 작은 용량은 아니네요 ㅎㅎ

 

 

이 덤프 파일을 디버깅하기 위해선 WinDbg라는 마이크로소프트의 프로그램을 설치해야 합니다.

 

https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools에 가면 위의 내용을 볼 수 있습니다. WinDbg는 Windows 10 SDK에 포함되어 있으니 Windows 10 SDK를 다운받으라는 이야기입니다.

 

https://developer.microsoft.com/ko-kr/windows/downloads/windows-10-sdk를 방문하여 Windows 10 SDK 설치 프로그램을 다운받아주세요. 무료로 다운 가능합니다.

 

다음, 동의 버튼을 누르다 보면 위 사진처럼 뭘 설치할지 선택하는 옵션이 나옵니다. Debugging Tools fo Windows(WinDbg)만 체크해놓고 다른 건 다 해제하고 설치를 해주세요.

 

C:\Windows\MEMORY.DMP에 있던 파일은 C:\dump\MEMORY.DMP로 옮겼습니다. 아무래도 C:\Windows 폴더는.. 권한 문제가 생길 수 있어서요.

 

윈도우 탐색기를 열어 C:\Program Files (x86)\Windows Kits\10\Debuggers\x64 경로로 갑니다. 그리고 주소창에 cmd를 입력하고 엔터를 쳐주세요.

windbg -y srv*c:\symbols*http://msdl.microsoft.com/download/symbols -z c:\dump\MEMORY.DMP

cmd가 뜨면 위의 명령어를 입력해주세요.

 

엔터를 쳐주세요~

 

그러면 WinDbg 창이 지정한 덤프 파일을 읽어옵니다.(심볼은 서버에서 읽어옴)

위 사진에서 빨간색으로 표시한 네모에 명령어를 입력하면서 디버깅을 진행할 수 있습니다.

 

!analyze -v

를 입력해보겠습니다. 그러면 약간 시간이 걸리는데 심볼을 가지고.. 데이터를 만드는 것 같습니다.

 

여러 데이터가 나오는데 너무 길어서 일부만 보겠습니다.

 

*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_POWER_STATE_FAILURE (9f)
A driver has failed to complete a power IRP within a specific time.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an Irp for too long a time
Arg2: ffff85048ca4e570, Physical Device Object of the stack
Arg3: fffff9091dc7f7b0, nt!TRIAGE_9F_POWER on Win7 and higher, otherwise the Functional Device Object of the stack
Arg4: ffff85048f7669a0, The blocked IRP

 

..생략..

 

FOLLOWUP_IP: 
nvlddmkm+1cc9e0
fffff802`318ec9e0 48ff6078        jmp     qword ptr [rax+78h]

FAULT_INSTR_CODE:  7860ff48

SYMBOL_STACK_INDEX:  0

SYMBOL_NAME:  nvlddmkm+1cc9e0

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: nvlddmkm

IMAGE_NAME:  nvlddmkm.sys

DEBUG_FLR_IMAGE_TIMESTAMP:  5ccfa0fe

제가 윈도우 블루스크린 디버깅은 처음이라.. 잘 해석하지는 못합니다. 그래도 대충 살펴보면 nvlddmkm 이라는 것이 문제와 관련있다는 것을 알 수 있습니다. 이 파일은 찾아보니 Nvidia 그래픽카드 드라이버와 관련된 파일입니다.

(명령어를 더 입력하면서 디버깅을 해볼 수도 있습니다. 관심있으신 분들은 명령어를 찾아보세요)

 

사실 예전에도 그래픽카드를 최신으로 업데이트 해본 적이 있으나 그때는 문제가 해결되지 않았습니다.

그런데 https://www.nvidia.com/Download/driverResults.aspx/151275/en-us 를 방문하여.. 최신 그래픽카드 드라이버를 다운 받으니.. 신기하게도 지겹게 겪어오던 블루스크린 문제가 해결됐습니다.

 

어쩌면 그래픽카드 드라이버만 업데이트해서 개선된 것일 수도 있고.. 아니면 업데이트 이전에 문제를 해결하기 위해 제어판 > 전원 옵션을 만지작 거렸던 것이 드라이버 업데이트를 하면서 효과를 발휘한 것일 수도 있습니다.

 

어쨋든 저와 비슷한 문제를 겪고 계신 분들에게 도움이 되길 바랍니다.

 

에러가 뜨는 경우

혹시 Could not find the c:\dump\MEMORY.DMP Dump File. Win32 error 0n5 액세스가 거부되었습니다.(access denied)에러가 뜨시는 분이 계신가요?

 

윈도우에 로그인 한 계정이 관리자 계정이 아니라서.. 관리자 권한이 없어서 생기는 문제일 확률이 높습니다.

이 경우는 아래의 방법으로 관리자 권한으로 cmd를 실행시켜주세요.

 

왼쪽 하단의 돋보기 버튼을 클릭하고 cmd를 입력해주세요. 그러면 명령 프롬프트가 보이는데 마우스 우클릭을 해서 권리자 권한으로 실행을 눌러주세요.

(이렇게 실행된 cmd는.. 관리자 권한을 가진 cmd로.. 좀 더 많을 일을 할 수 있습니다.)

 

cd C:\Program Files (x86)\Windows Kits\10\Debuggers\x64 

위의 명령어를 입력해서 조금 전에 설치한 windbg 폴더로 갑니다.

 

그리고 다시 동일한 명령어를 입력하여 windbg를 실행시켜주세요~

windbg -y srv*c:\symbols*http://msdl.microsoft.com/download/symbols -z c:\dump\MEMORY.DMP 

 

*관리자 권한으로 실행하면 잘 된다는 결과를 알려주신 방문자님 감사합니다~^^

참고

http://fresh3653.rssing.com/chan-58603767/all_p26788.html

https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0x9f--driver-power-state-failure?redirectedfrom=MSDN

 

작성자

Posted by 드리머즈

댓글 영역