Linux 커널의 디버그 정보 - 어떻게 작동하나요?

Linux 커널의 디버그 정보 - 어떻게 작동하나요?

디버깅 지원을 추가하는 일부 플래그(예: CONFIG_DEBUG_INFO)를 사용하여 Linux 커널을 컴파일할 수 있다는 것을 알았습니다. 이러한 옵션은 디버깅에 유용하지만 SystemTap과 같은 일부 유틸리티에서도 필요합니다.

SystemTap을 사용하는 이유는 전체 시스템에서 모든 시스템 호출을 얻을 수 있기 때문입니다(그리고 모든 프로세스를 추적하기 위해 strace를 사용하는 것처럼 중단되지 않습니다).

커널에서 이 정보를 읽는 방법(큰 오버헤드를 발생시키지 않는 방식)을 알고 싶습니다.

답변1

CONFIG_DEBUG_INFO디버깅 기호(gdb 또는 기타 디버거용)를 사용하여 커널을 빌드하는 방법에 관한 것입니다. 커널 자체와 별도로 디스크에 저장되며 실행 중인 커널 복사본에서 읽혀지지 않습니다.

관련 정보