본문 바로가기
Windows

Windbg - Crash Dump 발생시 기본 체크 사항들

by 올엠 2020. 11. 27.
반응형

Crash Dump 분석 체크 리스트

여기서는 덤프 분석 시 기본적인 확인할 사항을 정리 해본 것 입니다.

해당 상황에 아래 확인 사항들을 보시면 문제점 해결하시는데 도움이 되실 겁니다.

 

기본 사항

내부 자료 검색

Google 혹은 Microsoft Search에서 알려진 이슈가 있는지 검색 (가끔 답을 바로 찾을수도..)

툴을 이용해서 저장한 Dump (자동 혹은 수동으로 생성..)

OS/SP 버전 (서비스팩)

OS언어

Debug 시간

System 가동 시간

컴퓨터 이름

.kframes 100


Application Crash or hang 일때

기본 분석 (!analyze –v 또는 행이라면 !analyze –v –hang)

Crash 와 hang의 Critical Sections 확인 (!locks 그리고 !locks –v, !cs –s –l –o)

Component의 타임 스탭프, 중복, 경로, DLL 문제 확인

새로운 Components 가 실행 됐는지 확인

Process threads (~*kv 또는 !uniqstack)

Process 실행 시간

Component에 Full raw stack중 문제가 있는 thread

Component에 Full raw stack중 main application thread

Process 크기

Thread 번호

Gflags 값 (!gflag)

Thread로 소비한 시간 (!runaway)

Environment (!peb)

Import table (!dh)

Hooked function (!chkimg)

Exception handlers (!exchain)

컴퓨터 이름 (!enwar COMPUTERNAME)


System hang 일때

기본 분석 (!analyze –v –hang)

ERESOURCE contention 확인 (!locks)

Processes 와 가상 메모리를 포함한 Session space (!vm 4)

Pools (!poolused)

Waiting threads (!stacks)

Critical system queues (!exqueue f)

I/O (!irpfind)

모든 thread stack traces의 리스트 (!process)

미심적은 threads의 LPC chain (!lpc message)

미심적은 Processes의 Critical sections (!ntsdexts.locks)

Sessions, session processes (!session, !sprocess)

Processes (!Process 0 0 크기, dandle table 크기 확인)

실행중인 threads (!running)

Ready threads(!ready)

DPC queues (!dpcs)

APCs의 리스트 (!apc)

Internal queues spinlocks (!qlocks)

컴퓨터 이름 (dS srv!srvcomputername)


BSOD일 때

기본 분석 (!analyze –v)

Pool address (!pool)

Component 타임 스탬프

Processes 와 가상 메모리 (!vm 4)

다른 Processors의 현재 threads

Raw stack

Bugcheck description (잘렸거나 잘못된 dumps를 위해 ln exception address 포함)

Bugcheck callback data (!bugdump Windows XP SP1 전버전에 사용)

Bugcheck secondary callback data (.enumtag)

컴퓨터 이름 (dS srv!srvcomputername)

반응형

댓글0