gdb로coredump를 디버깅하는 방법

디렉토리:
  • coredump는 무엇입니까?어떤 상황에서coredump가 생성됩니까?coredump의 작용은 무엇입니까?
  • coredump의 생성 경로와 파일 이름을 어떻게 제어합니까?
  • gdb 디버깅coredump 프로그램을 어떻게 사용합니까?

  • 0.coredump란?어떤 상황에서coredump가 생성됩니까?coredump의 작용은 무엇입니까?
    1.coredump의 생성 경로와 파일 이름을 어떻게 제어합니까?
    (1)ulimit -c
    coredump 파일의 저장 공간 크기를 수정합니다. 기본값은 0입니다.
    ulimit -c 1024
      
    ulimit -c unlimited
    

    (2) coredump 생성 경로를 설정합니다.
    /proc/sys/kernel/core를 통해pattern 파일 수정:
    echo /tmp/core.%e.%p > /proc/sys/kernel/core_pattern
    

    예:
    echo /media/B/share/core.%e.%p > /proc/sys/kernel/core_pattern
    

    이렇게 하면coredump가 더 생기면/media/B/share/디렉터리에 저장됩니다. 파일 이름은core입니다.active_threadpool.34257(실행 파일 이름 + 프로세스 번호)
    2. gdb 디버깅coredump 프로그램을 어떻게 사용합니까?
    gdb  ./active_threadpool  core.active_threadpool.34257
    
    gdb + + coredump coredump 파일을 디버깅할 수 있습니다.

    좋은 웹페이지 즐겨찾기