rein’s world

프로그래머, 독서가, 게이머 그리고 블로거

Tag : Debugging


  • Windows를 재설치하고 5.1 채널 출력이 작동 정지…- 2008-06-28:

    주초에 Windows Vista x64를 집에서 사용하는 데탑에 설치했다 — 모종의 문제로 이전 버젼을 리셋(…).
    그리고 나서 각 드라이버 및 프로그램들을 재설치하는데, 이게 왠걸 iTunes에서 몇몇 트랙을 재생하는데 5.1 채널로 나오질 않는다 -_-;;;
    사실 iTunes야 해당 트랙 — CD라거나 aac 파일이라거나 … — 을 해당 트랙에 맞게 디코딩 해주는 것 뿐이지만 내 기억이 맞다면 분명히 SoundBlaster X-fi가 알아서 [...]

    (계속 읽기 »)


  • 최악의 버그- 2008-06-23:

    최악의 버그가 뭐냐고 묻는다면 주저않고 답할 수 있는 것: 재현이 안되는 멀티스레드 응용의 버그.
    오전에 날씨가 적당히 시원해서 간만에 오전에 집중해서 프로그래밍을 했다. 대충 티켓 하나 제대로 치우고 오후 근무를 시작하려던 참에 -_- 버그 하나에 대한 사항이 넘어왔음.
    3월 중순~4월 중순에 손댔던 응용의 버그라는데, 상황을 설명하자면

    클라이언트 코드 / 바이너리 없음(…)
    서버는 내가 작성
    정확한 재현 조건 모름
    Q/A 팀은 버그 [...]

    (계속 읽기 »)


  • C언어 문자열을 가능한한 피해야하는 이유- 2008-06-19:

    C++에서  C 언어 스타일로 — 메모리 할당만 빼고 – 문자열을 복사하는 코드다. 여기에는 버그가 숨어있다.

    void some_function( const char* str )
    {
    int len = ::strlen( str ); // str은 안전한 문자열임
    char* pBuffer = new char[ len ];
    ::memset( pBuffer, 0, len );
    ::strcpy_s( [...]

    (계속 읽기 »)


  • 잡담: 2008년 5월 20일- 2008-05-20:

    어떤 디버깅
    <rein_> 덤프도 없이
    <rein_> 미니덤프 로그랑
    <rein_> (덤프도아님)
    <rein_> 모듈 주소정보랑
    <rein_> 해당 리비젼 빌드한 맵파일만 가지고
    <rein_> 추측디버깅중(…)
    <rein_> + 재연안됨
    <rein_> orz
    <zzl> 이건 뭐 실진맥도 아니고
    Orz
    결국 제대로 된 덤프를 남기게 변경했지만 (팀 라이브러리 ㄳ), 여튼 서버 코드를 내 손에서 한참 벗어난 곳에서 디버깅해야할 줄은. 이건 다 경험 문제겠지.
    이력서 제발 좀
    - 경력과 관계 없는 알바 : 프로그래머가 사무직 보조 알바라거나 [...]

    (계속 읽기 »)


  • ActionScript: Shock and awe- 2008-05-09:

    C…더 이상 이 주제로 글을 쓰고 있지만 아마도, 그리고 기원하건데 마지막 글일 듯.
    지역 변수의 스코프 문제
    지역 변수의 선언이 유효한 범위(local variable scope) 가 굉장히 괴악하다. 다음은 너무나도 적절한 mtasc.com에서 제시하는 예제.
    function f() {
    var x = 1;
    if( true ) {
    var x = “hello”;
    // …
    }
    trace(x+1);
    }
    trace 의 결과가 좀 충격적이다. 일반적인 프로그래밍 언어 에 익숙한 사람이라면 출력되는 결과를 [...]

    (계속 읽기 »)


  • Thread Local Storage on Win32- 2008-04-22:

    제목에 비해선 좀 작은 주제를 하나
    Win32 API — 좀 더 구체적으로는 MSVC / intel CC의 일부 — 에서는 thread-local 하다는 것을 C/C++ 키워드로 표현할 수 있다.

    static inline int getMid(BYTE* array, const int size,
    const int index)
    { // find median value in array
    int [...]

    (계속 읽기 »)


  • 곱셈의 덫 - 편지 봉투 뒷면을 써야할 시점- 2008-04-02:

    오후에 ticket 하나를 꺼내서 슥슥슥 구현을 하고나서, 테스트가 통과하나 테스트를 돌리는데 이게 왠 걸, 통과는 하는데 원래 1.x 초면 (늦어도 3초?) 끝나던 것들이 1분씩 걸리고 있는 것.
    뭔가 버그를 집어넣었구나 하고 이전 revision과 현재 작업 사본을 diff 한 다음에 뭐가 다른가 확인.
    대충 10여분 코드 리뷰를 하는데 — diff에 대해서만 하니까 — 잘못된 곳을 못찾겠더라. 디버거를 들이대고 [...]

    (계속 읽기 »)