관리 메뉴

kisoo

WinDBG 와 Virtual Box 를 이용한 디버깅 본문

01.About Programming /3.Debug Lab

WinDBG 와 Virtual Box 를 이용한 디버깅

JamesK78 2009. 9. 9. 14:30
VirtualBox 다운로드 http://www.virtualbox.org/wiki/Downloads
WinDBG 다운로드 http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx

원격 디버깅을 하기 위해는 2대의 PC가 필요한대 하나는 Debugger 이고 하나는 Debuggee 라 합니다.

여기서 설명할 방법은 1대의 PC에 VirtualBox로 가상 윈도우를 설치하여 사용하는 방법입니다.


그럼 본론으로 들어가서 가상 윈도우를 설치했거나 설치할 VirtualBox에 그림처럼 시리얼 포트를 추가합니다.
 


이제 가상 윈도우가 디버그 모드로 부팅하기 위한 작업을 해줘야합니다.

XP 이하 운영체제일 경우:


Boot.ini 를 수정해줘야 합니다.

다음과 같이 /debug를 추가하면 디버그 모드로 부팅할 수 있습니다.
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="WinDBG Remote Debugging Mode" /fastdetect /debug

두 컴퓨터가 시리얼 포트로 연결되어 있으면 다음과 같은 줄을 추가한다.
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="WinDBG Remote Debugging Mode" /fastdetect /debug /debugport=COM1 /baudrate=115200.

Vista 이상 운영체제일 경우:


msconfig 를 사용하여 설정할수도 있고 아래처럼 bcdedit 를 사용해도됩니다.

* 참고로 전 bcdedit 를 사용했어요.

c:\> bcdedit /debug on

[COM1 사용시]
c:\> bcdedit /dbgsettings serial debugport:1 baudrate:115200

[1394 사용시]
c:\> bcdedit /dbgsettings 1394 channel:11


이것으로 Debuggee 설정이 끝났습니다.
다음은 Debugger 설정입니다.

WinDBG 설치된 컴퓨터에서 시작->실행에 다음과 같이 입력합니다.
windbg -b -k com:pipe,port=\\.\pipe\com_1,resets=0

매번 입력하기 힘드니까 [바로가기]를 만들어두면 편합니다.

* Vista 이상에선 관리자 모드로 실행해야합니다.


이것으로 원격 디버깅을 위한 모든 설정을 완료했습니다.
Comments