VirtualBox 에서 '직렬 포트' 설정
Guest OS '직렬포트' 설정 |
'존재하는 파이프/소켓에 연결' 에 체크가 되어있으면 오류 발생 |
Guest OS 의 부팅 옵션 설정
부팅 로더 추가 후 디버그 모드 활성화 |
- "/copy" 옵션으로 {current} 로더와 동일한 로더를 하나 추가합니다. - "/d" 옵션으로 부팅 시 화면에 보일 내용을 설정합니다. ※ 저는 기존의 description ("Windows 8.1") 뒤에 "[DEBUG]" 를 추가했습니다. |
- "/set" 옵션으로 복사한 로더에 디버깅이 가능하도록 설정합니다. |
디버그 환경 설정 |
- "/dbgsettings" 옵션으로 디버그 환경을 설정합니다. ※ "직렬 포트 : COM1" 을 이용하기 위해 SERIAL DEBUGPORT:1 로 설정합니다. |
Guest OS 의 부팅 옵션 설정이 정상적으로 되었다면 재부팅 시 멀티 부팅 화면이 뜰 겁니다.
'기본 부팅'과 '디버그 가능 부팅' |
WinDbg 에서 커널 디버깅 설정
"File -> Kernel Debug..." 메뉴를 실행 후 'COM" 탭으로 변경~
WinDbg 의 커널 디버깅 설정 |
'Baud Rate' 항목은 Guest OS 에서 설정한 값인 "115200" 로 지정을 하고...
'Pipe' 항목에 체크...!!!
'Port' 항목엔 VirtualBox 직렬 포트 설정에서 입력한 경로를 그대로 입력합니다.
'확인'을 누르면...
OS 연결 대기 상태 |
디버깅할 대상을 기다리는 대기 상태가 됩니다.
이 상태에서 Guest OS 의 '디버그 가능 부팅' 을 선택하면...
OS 인식 |
Guest OS 에 연결되었다는 메시지가 뜨면서 커널 디버깅이 가능해집니다 ~ :)