크래시 덤프 저장
Windows 예외 처리, MiniDump, DbgHelp로 크래시 당시 실행 상태를 기록했습니다. 이후 디버거에서 덤프와 관련 정보를 열어 원인을 확인할 수 있도록 했습니다.
크래시 덤프, 메모리 할당·해제 기록, 실행 위치 샘플을 남기는 C++ 도구를 만들었습니다. 오류 원인과 해제되지 않은 메모리를 확인하는 수업 과제입니다.
크래시 분석 도구, 메모리 추적 도구, 샘플링 프로파일러를 각각 만들었습니다. 오류 상황에서 덤프와 메모리 기록을 남기고, 프로파일러는 LiquidFun/Box2D 테스트 환경에 적용했습니다.
예외가 발생한 순간의 상태와 메모리 할당·해제 내역을 기록합니다. 샘플링 프로파일러는 실행 중인 명령 주소를 모아 함수 이름을 찾고 CSV로 출력하는 프로토타입입니다.
Windows 예외 처리, MiniDump, DbgHelp로 크래시 당시 실행 상태를 기록했습니다. 이후 디버거에서 덤프와 관련 정보를 열어 원인을 확인할 수 있도록 했습니다.
전역 new/delete에 할당 기록을 연결했습니다. 이미 해제된 주소를 다시 해제하거나 new와 delete의 종류가 맞지 않으면 CSV에 기록합니다. 종료 시에는 해제되지 않은 할당 내역도 남깁니다.
타이머에서 스레드 컨텍스트의 RIP를 읽고 SymFromAddr로 함수 이름을 찾습니다. 수집한 실행 위치를 집계해 ProfileReport.csv로 출력하도록 작성했습니다.
수업 프레임워크로 만든 개인 과제입니다. LiquidFun/Box2D에 적용한 샘플링 프로파일러는 실행 위치 수집과 심볼 해석을 실습한 프로토타입입니다.