gdb core 파일 분석중에.. 질문이 있는데요..
글쓴이: stypr / 작성시간: 수, 2005/01/05 - 5:06오후
29번 줄 printf("\n(unsigned long) &buf is [%08x]\n\n",(unsigned long) &buf); (gdb) bt #0 0x08048410 in main (argc=-1073744360, argv=0xbffff618) at test.c:29 #1 0xbffff618 in ?? () <-- 여기 실행하다가 죽었다는 뜻인가요?? (gdb) x/x 0xbffff618 <-- 이부분을 보면 nop값인데 ㅠ.ㅠ 어케 죽져?? -_-;; 0xbffff618: 0x90909090
gdb에 대해 궁금해서 질문 올립니다..
Forums:
Full.
풀소스로 보여주시면 안될까요? ^^
Hyo-Sung Lee(李曉星/Mark Lee)
KRSF Certified Inline Skate Instructor
Fitness Inline Skate Trainer
Mogul&Freeride Skier
IDOne ski rider
Cafe MogulBuddy/KoreaMogul
E-Leader(C) Programmer
그게 아니고 ???부분에서 main 을 호출했다는 의미입니다. bt에
그게 아니고 ???부분에서 main 을 호출했다는 의미입니다.
bt에서 가장 위에 있는 것이 가장 나중에 불린 함수입니다. 보통 OS나 libc등에서 main을 호출하기 전에 불리는 부분이니 별로 신경 쓰지 않아도 될 듯합니다.
비교적 정상적인 segfault를 받았다면 심벌이 ??로 표시되는 일은
비교적 정상적인 segfault를 받았다면 심벌이 ??로 표시되는 일은 없습니다. 심벌이 ??로 표시된다는 것은 크래시 당시 이미 스택이 "완전히" 깨져 있다는 의미이며 실제로 이 core는 별로 디버깅에 도움이 되지 못한다는 의미가 되겠습니다.
댓글 달기