System.map

System.map 파일은 리눅스에서 커널이 사용하는 심볼 테이블이다.

심볼 테이블은 심볼 이름과 메모리의 해당 주소를 조회하는 것이다. 심볼 이름은 변수 이름일 수도 있고 함수 이름일 수도 있다. System.map은 심볼 이름의 주소나 주소의 심볼 이름이 필요할 때 필요하다. 커널 패닉 및 커널 웁스를 디버깅하는 데 특히 유용한다. 커널은 CONFIG_KALLSYMS가 활성화되면 자체적으로 주소를 이름으로 변환하므로 ksymoops와 같은 도구가 필요하지 않다.

 내부 
다음은 System.map 파일의 일부이다.
 c041bc90 b packet_sklist
 c041bc94 b packet_sklist_lock
 c041bc94 b packet_socks_nr
 c041bc98 A __bss_stop
 c041bc98 A _end
 c041c000 A pg0
 ffffe400 A __kernel_vsyscall
 ffffe410 A SYSENTER_RETURN
 ffffe420 A __kernel_sigreturn
 ffffe440 A __kernel_rt_sigreturn

주소는 한 빌드에서 다음 빌드로 변경될 수 있으므로 커널의 각 빌드마다 새로운 System.map이 생성된다.

 같이 보기 
 리눅스 커널 웁스
 커널 패닉

 각주 

분류:실행 파일 포맷
분류:리눅스 커널