RadarURL

윈도우즈
2012.07.14 06:16

Troubleshooting Tools - Dr. Watson 사용

조회 수 4147 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부


a0101482_4ac451ac9c360.jpg




a0101482_4ac451abeb68d.jpg


 

Dr. Watson을 사용할 수 없도록 설정하는 방법

loadTOCNode(2, 'moreinformation');
  1. 시작, 실행을 차례로 누르고 열기 상자에 regedit.exe를 입력한 다음 확인을 누릅니다.
  2. 다음 레지스트리 키를 찾아 누릅니다.
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AeDebug
    참고: 3단계와 4단계는 선택 사항이지만 Dr. Watson의 기본 사용을 복구하려는 경우 필요합니다.
  3. AeDebug 키를 누른 다음 레지스트리 메뉴의 레지스트리 파일 내보내기를 누릅니다.
  4. 저장할 레지스트리 파일의 이름과 위치를 입력한 다음 저장을 누릅니다.
  5. AeDebug 키를 삭제합니다.

디버거 프로그램의 레지스트리 항목은 Windows의 AeDebug 키에 있습니다. Dr. Watson 프로그램은 기본적으로 Windows에 설치되어 있고 응용 프로그램 오류가 발생할 때 실행되도록 구성되어 있습니다(Auto 값에 데이터 값 1로 설정). 기본값은 다음과 같습니다.

값 이름 = Auto
종류 = 문자열(REG_SZ)
데이터 값 = 1 또는 0(기본값은 1)

값 이름 = Debugger
종류 = 문자열(REG_SZ)
데이터 값 = drwtsn32 -p %ld -e %ld -g

참고: 이 데이터 값(drwtsn32 -p %ld -e %ld -g)은 Dr. Watson에만 적용되고 다른 디버거에는 고유한 값과 매개 변수가 있습니다.

Visual C++을 기본 디버거로 다시 등록하는 레지스트리

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug]

"Auto"="0"

"Debugger"="\"E:\\Program Files\\Microsoft Visual Studio\\Common\\MSDev98\\Bin\\msdev.exe\" -p %ld -e %ld"

"UserDebuggerHotKey"=dword:00000000


a0101482_4b492c992e2fb.png
[그림 1] Windows Vista 에서 닥터왓슨(Dr. Watson)을 실행한 화면


따라서 소프트웨어를 사용하다 크래쉬(crash)가 발생했을 경우 해당 프로세스 또는 풀 메모리에 대해 덤프(dump)를 뜰 수가 없다.

하지만 이를 해결할 수 있는 방법이 있다. 바로 윈도우 XP (Windows XP)의 닥터왓슨(Dr. Watson)을 복사해와서 설치하는 방법이다.

설치 방법은 다음과 같다.

1. 윈도우 XP (Windows XP)에서 닥터왓슨(Dr. Watson)을 복사한다.
 -> XP에서 %SYSDIR%\drwtsn32.exe를 Vista의 %SYSDIR%\drwtsn32.exe로 복사한다.

2. 닥터왓슨(Dr. Watson)을 기본 디버거로 셋팅한다.
 -> Vista에서 Command Line(CMD)를 관리자 권한으로 실행시키고 다음 명령을 입력한다.

a0101482_4b492ca14e5b4.png
[그림 2] CMD를 관리자 권한으로 실행
 
명령 : drwtsn32.exe -i

a0101482_4b492ca6d6e37.png
[그림 3] 닷터왓슨(Dr. Watson)을 기본 디버거로 설치하는 명령줄

이렇게 하면 닥터왓슨(Dr. Watson)이 기본 디버거로 지정되어 크래쉬 덤프등을 생성할 수 있다. 하지만 UAC로 인해 관리자 권한 없이 실행된 소프트웨어의 경우 정상적으로 덤프가 생성되지 않을 수 있으므로 닥터왓슨(Dr. Watson)을 실행하고 반듯이 "시각적 알림" 옵션을 꺼 두는것이 좋다.

a0101482_4b492cad9efe7.png

[그림 4] 시각적 알림 옵션 끄기


Dr. Watson은 기본적인 Crash Handler Registry에 다음과 같이 설정함으로써 Crash가 발생했을 때, Crash Dump를 수집할 수 있도록 도와 주는 Tool입니다.

 

** Crash ?

User Mode에서 Crash란 특정 Process가 예기치 않게 OS에 의해서 종료(terminated)되거나 Hang을 유발하는 현상을 말합니다. 간혹, Event Log Access Violation 이벤트가 등록될 수도 있습니다. 일반적으로 Crash는 다음의 원인에 의해서 발생할 수 있습니다.

 

 - 잘못된 Pointer의 사용

 - Stack overflow

 - Buffer overflow/underflow

 - Mismatched/ damaged files의 사용

 - Heap memory corruption

 - Stack memory corruption

 - Memory/Disk와 같은 Critical resource의 부족

*************

 

Crash 발생시 Dump를 수집하기 위해서 Dr. Watson을 설정하는 방법은 다음과 같이 합니다. 

1.    다음의 registry key로 이동합니다. 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug

2.    Debugger 값을 REG_SZ 로써 추가하거나 설정합니다. REG_SZ 문자열을 drwtsn32 -i 라고 입력합니다.

3.    만일, 사용자의 개입 없이 debugger가 수행되기를 바란다면, Auto 값을 REG_SZ 로써 추가하거나 설정합니다. 문자열 1을 설정하면 Dialog box가 Open되지 않습니다.
 

Dr. Watson은 모든 1st Chance Exceptions에 대해서는 무시하며, 모든 Unhandled Exceptions 2nd chance Exceptions에 대해서 수행됩니다.

 

  ** Exception은 프로그램의 실행에서 Abnormal Condition을 만나거나 Error가 발생했다는 것을 의미합니다. 만일, Debugger attach되어 있다면, 모든 Exceptions에 대해서 handling 이 됩니다. 프로그램이 해당 Exception을 처리하기에 앞서서 Debugger attach되어 있다면, Debugger는 해당 Exception handling 할 수 있습니다. 이 경우의 Exception 1st Chance Exception이라고 합니다. 만일, Debugger가 해당 Application을 계속적으로 수행하도록 허용하고 따로 Exception으로써 handling을 하지 않는 다면, Program은 해당 Exception을 만나게 되고, Program내부의 Exception handler에 의해 문제되지 않도록 처리하거나 아니면 무시되어 실행될 수 있습니다. Program에 의해서 처리되지 않는 Exceptions은 여전히 Debugger attach 되어 있는 환경에서 다시 Debugger에 의해 처리가 될 수 있는 데, 이는 2nd chance exception이라고 합니다. 만일, debugger가 이를 handling 하지 않는 다면, Unhandled Exception이 되어 이는 Application을 비정상 종료하도록 유도합니다. **

 

Vista SP1에서는 WER(Windows Error Reporting)을 통해서 User mode dump 수집을 가능하게 합니다. 사용하는 Registry KeyHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps 입니다.

 

 - DumpFolder REG_EXPAND_SZ (default value: %LOCALAPPDATA%\CrashDumps

 - DumpCount REG_DWORD (default: 10)

 - DumpType REG_DWORD (default: 1) 1: mini dump, 2: Full dump

 

상위의 설정은 global 설정입니다. 만일, 특정 process를 위한 설정을 원한다면, registry 하위 키를 이용하여, 예를 들어, MyApp.exe 를 위한 설정은 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps\MyApp.exe 에 설정하면 됩니다

drwtsn32.exe

LocalDumps.reg

AeDebug_7.reg

AeDebug_NTSD.reg

AeDebug_VS.reg

AeDebug_XP.reg

 

출처 : http://bwangel.egloos.com/10172590

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.18 928126
202 윈도우즈 윈도우 자동 로그온 설정이 보이지 않을 때 조치사항 JaeSoo 2024.08.16 203
201 윈도우즈 Rufus 로 윈도우10 usb 디스크를만들때 UEFI,Legacy 설정 (4G 이상 부팅 이미지 GPT) file JaeSoo 2023.11.20 2261
200 윈도우즈 Windows 11에서 모든 시스템 트레이 아이콘을 관리하고 표시하는 방법 file JaeSoo 2023.11.05 1367
199 윈도우즈 윈도우11 작업 표시줄 좌/우/상/하 이동 및 두 줄 만드는 방법 file JaeSoo 2023.11.05 1251
198 윈도우즈 윈도우11의 마우스 오른쪽 버튼 메뉴, 기존 윈도우 형태로 되돌리는 방법 file JaeSoo 2023.10.25 914
197 윈도우즈 [Msoffice] Pdfmaker office addin 오류 해결방법 file JaeSoo 2023.08.21 3776
196 윈도우즈 윈도우 컴퓨터 유지보수에 유용한 무료 프로그램들 file JaeSoo 2016.09.01 418
195 윈도우즈 [윈도우] K, KN, N 버전 차이 file JaeSoo 2016.06.20 392
194 윈도우즈 윈도우10 제품키 변경 프로그램을 이용한 정품인증받기 file JaeSoo 2016.06.20 471
193 윈도우즈 [윈도우10] 제품키로 정품인증 받기 완결판 file JaeSoo 2016.06.20 484
192 윈도우즈 윈도우 업데이트 후 시스템 용량이 많이 줄었다면 Download 폴더를 지워보자 file JaeSoo 2016.05.17 780
191 윈도우즈 윈도우7 한글입력이 안될때 ctfmon.exe file JaeSoo 2016.03.13 776
190 윈도우즈 Microsoft IME 입력기가 사라진 현상 JaeSoo 2016.03.13 608
189 윈도우즈 윈도우에서 특정 프로세스 강제 종료하는 방법 (taskkill) file JaeSoo 2016.02.19 872
188 윈도우즈 윈도우 8 웹 브라우저 사용흔적 (Windows 8 Web Browser Artifacts) file JaeSoo 2016.02.13 1044
187 윈도우즈 '윈도우 7' 에서 폴더 여는 시간이 오래 걸린다면? file JaeSoo 2016.02.12 752
186 윈도우즈 Windows Update 웹 사이트에서 Microsoft Update 웹 사이트에서 또는 백그라운드 인텔리전트 전송(BIT) 서비스 시작하려고 하면 업데이트를 다운로드하려고 하면 오류 메시지가 나타난다 1 JaeSoo 2016.02.11 2922
185 윈도우즈 일부 업데이트가 설치되지 않았습니다 오류 해결 JaeSoo 2016.01.23 856
184 윈도우즈 Window Server License 와 CAL JaeSoo 2015.11.10 739
183 윈도우즈 AsusSetup Log.iniis lost 에러 해결법 file JaeSoo 2015.11.09 770
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너