Windbg에 포함된 Adplus를 이용한 덤프 생성 방법입니다. 간략 예제크래시 덤프 : adplus.vbs -CRASH -p PID -o 출력경로행 덤프 : adplus.vbs -HANG -p PID -o 출력경로 Adplushttp://support.microsoft.com/kb/286350ADPlus 명령줄 스위치Adplus를 사용 하는 일련의 명령줄 스위치나 인수를 사용 하는 스크립트를 지정 해야 합니다. 최소한 ADPlus 두 개의 스위치가 필요 합니다: 하나는 작동 모드를 지정 하 고 작동 대상 프로세스를 지정 합니다. 다음은 가장 자주 사용 하는 스위치입니다. 베이스 ADPlus실행 하 여 스위치의 전체 목록을 보고 하거나 도움말 파일 (Debugger.chm)을 디버거를 볼 수도 있습니다..
이 글은 게임 데브 포에버 (http://gamedevforever.com) 에 기고하기 위해 작성된 글임을 알려드립니다. 이번 시간에는 예고한 대로 버그 재발 방지에 대해서 알아보겠습니다. 저를 포함한 대부분의 개발자들은 버그를 만듭니다. 인재들이 모였다는 MS의 IE 베타버전이 얼마나 엉망인지 아시죠? QA와 오류 보고 시스템 등을 통한 검수가 정식 버전을 안정성있게 만드는 것이지 MS가 만든 제품도 버그가 많습니다. 그 들이 극찬하는 IOS나 OSX요? 네 그렇게 신중한 애플도 버그를 만듭니다. 특히나 많은 버그가 개발 과정에서 더더욱 많이 튀어나오는데, 이들 대부분이 개발자의 습관에서 비롯됩니다. 흔 히 많이 하는 실수가 초기화 오류(변수값의 초기화 값이 없다거나, 변수가 초기화 되는 시점이 잘못..
이 글은 게임 데브 포에버 (http://gamedevforever.com) 에 기고하기 위해 작성된 글임을 알려드립니다. 안녕하세요~ 오랜만에 다시 찾아뵙는 엘키입니다. 개인적으로 몸이 너무 좋지 않아 몸조리를 하고 다시 복귀했습니다. 이어지는 포스팅은 늦지 않도록 노력하겠습니다. (__) 꾸벅~ 지난 포스팅에서도 이야기 했다시피 일반적으로 버그에 대한 보고는 자신이 겪은 증상에 대한 보고 입니다. 아주 행복한 시나리오는 보고 받은 대로 시도하면 100% 재현 되는 버그입니다. 이런 종류의 버그는 너무나 해결하기 쉬워 “훗~ 어떻게 고쳐줄까?” 라고 고민하는 것만 집중하면 되지요. 하지만 대다수의 잡기 힘들었던 버그는 1. “그냥 뜬금 없이 프로그램이 종료” 2. “같은 방법으로 재현하려 해도 매번 다..
이 글은 게임 데브 포에버 (http://gamedevforever.com) 에 기고하기 위해 작성된 글임을 알려드립니다. 안녕하세요. 엘키라고 합니다. (절대 베르트랑 따라한거 아님!!) 제가 즐기는 게임은 제 블로그를 통해서 확인하실수 있으니, 저와 같이 플레이하실분 늘 환영합니다 ^^ (이렇게 홍보해도 캡파말고는 아는척 하는분 한분이 안계시더라는....쿨럭!!!) 이 블로그를 보시는 분들 다들 뛰어나고 다양한 경험을 많이 갖춘 분들이시겠지만, 제 경험담을 바탕으로 디버깅에 대해 알아보는 시간을 가져보고자 이렇게 나섰습니다. ^^ 우리는 모두 사고 뭉치입니다. 사람이란 실수할 수도 있다는 것을 전제로 이 글을 작성 하고자 마음 먹었죠. (정확성이 떨어지는 발로 하는 스포츠인 축구계의 명언에서 인용했습..
pdb를 배포하는 것은 너무나 쉽게 리버싱을 허용하는 것이기 때문에, 조금이라도 리버싱을 어렵게 하기 위해선 exe 파일만 배포해야 합니다. 보통 서버의 경우 디버깅 정보를 매칭 시키는 수단으로 pdb도 바이너리와 같이 두기도 하는데요, 이렇게 하는 것에는 장단점이 있기에 이에 대한 코멘트는 생략하겠습니다. pdb가 없을때와 있을때 VS2005를 통한 덤프 확인시에 어떻게 다른지 보여드리겠습니다. 정상적으로 매칭되는 pdb 파일이 존재할 때 남은 덤프 파일의 콜스택과 스레드 소스 코드 매칭 정보. pdb 파일이 존재하지 않을때 남은 덤프 파일의 콜스택과 스레드. 이렇게 차이가 납니다. 실제로 pdb 파일이 없을 시에는 어느 함수에서 크래시가 났는지 확인하기 매우 어렵죠. 위에 크래시 난 곳의 주소를 보시..
참고 자료 Windbg Tutorial http://www.codeproject.com/KB/debug/windbg_part1.aspx Windows에서 디버깅을 위해 만든 작은 메모리 덤프 파일을 읽는 방법 http://support.microsoft.com/default.aspx?scid=kb;ko;315263 Windbg로 덤프 남기는법http://msdn.microsoft.com/en-us/library/ff562428.aspx 잊지 말아야 할 점은, windbg는 symbol과 source code의 매칭을 해주지 않는다. 반드시 Symbol File Path와, Source File Path 메뉴 에서 경로를 제대로 지정해주어야, 덤프 분석시 정보가 제대로 출력된다. windbg shell c..
Download http://www.microsoft.com/DownLoads/details.aspx?familyid=C4A25AB9-649D-4A1B-B4A7-C9D8B095DF18&displaylang=en Testing Applications with AppVerifier http://msdn.microsoft.com/en-us/library/ms807121.aspx Using Application Verifier Within Your Software Development Lifecycle http://msdn.microsoft.com/en-us/library/aa480483.aspx#appverifier_sdl_topic2
- Total
- Today
- Yesterday
- c언어
- 엘키
- ruby
- 바로가기 프로그램
- MS-SQL
- 루비 온 레일즈
- perfmon
- CppSQLite
- 멀티스레드
- 좋은 프로그래머
- 게임데브포에버
- TDD
- Ruby on Rails
- 리버스 엔지니어링
- 임백준
- 디버깅
- 게임개발포에버
- 루비
- 디자인 패턴
- SDL
- RoR
- ftp
- Rails
- EasyExec
- SQLite Spy
- svn
- 조엘 온 소프트웨어
- EzShortcut
- TraceRoute
- NDC2013
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |