Windbg에 대해

고 연우·2022년 11월 6일
0

Windbg

목록 보기
1/1

❗Windbg 란❗

윈도우용 디버거

  • 디버거 : 응용프로그램이나 운영체제의 동작을 확인하고 제어할 수 있는 기능이 있어 어떤 동작을 분석하거나 문제를 확인하려는 목적으로 사용하는 도구

🔶Windbg 주요 기능

  • 응용프로그램 디버깅(유저모드 디버깅)
  • 커널모드 드라이버 디버깅(커널모드 디버깅)
  • 크래스 덤프 파일 분석
  • 윈도우 시스템 분석
  • 윈도우 시스템 분석
  • 스크립트와 확장 DLL
  • 디버깅 도움말
  • 디버깅에 필요한 윈도우 내부의 리소스 정보를 상세하게 제공할 뿐만 아니라 리소스를 조작하는 기능도 제공
  • 소스레벨 디버깅

🔶Windbg 디버깅 용어

🔸덤프 디버깅

유저모드나 커널모드에서 오류가 발생했을 때 생성되는 메모리 덤프 파일을 분석하면서 디버깅하는 것.

  • 메모리 덤프 파일 : 응용프로그램에 문제가 발생할 때 그 상태가 저장된 파일
  • 오류 발생 시점의 레지스터, 콜 스택, 메모리, 프로세스, 스레드 정보 등이 저장돼 있음

🔸디버그 심볼 파일

실행 파일을 빌드할 때 생성되는 디버그용 정보 파일

  • 디버그용 정보 란, 실행 파일 안에 존재하는 함수나 변수들의 이름과 위치, 소스 파일, 소스 라인 정보
    • Visual Studio에서 Debug 빌드 시 생성되는 xxx.pdb 확장자를 가진 파일 의미
  • Debug빌드 시, 기본적으로 xxx.pdb 파일이 생성되지만 Release 빌드 시에는 기본적으로 xxx.pdb 파일이 생성되지 않음

<Visual Studio 2022에서 Realse 빌드 시, xxx.pdb파일 생성 설정>
1. 프로젝트 우클릭 -> C/C++ -> 디버그 정보 형식 '프로그램 데이터베이스(/Zi)' 로 선택

2. 링커 -> 디버깅 -> '디버그 정보 생성(/DEBUG)' 선택

🔶Windbg 다운로드

여기 참고하면 좋을 듯. 정리를 잘해놓으셨다.


🙆‍♀️참고🙆‍♂️

책 : Windows Debugging 2/e -WinDbg로 배우는 윈도우 디버깅 참고
Windbg 다운로드

0개의 댓글