【Fundamental Tech】/Linux Kernel

공유 라이브러리의 로드 타임 재배치

[一日一學, 一日一新] 2025. 10. 31.

이 글은 리눅스(x86 32비트 기준)에서 동적 로더가 공유 라이브러리를 메모리에 로드할 때 발생하는

'로드 타임 재배치' 메커니즘을 설명합니다.

 

실행 파일과 달리 공유 라이브러리는 로드 주소를 미리 알 수 없어, 링커가 임시 값을 삽입하고

런타임에 동적 로더가 이를 수정하는 과정을 ELF 재배치 항목을 통해 분석합니다.

 

*원문: https://eli.thegreenplace.net/2011/08/25/load-time-relocation-of-shared-libraries/

 

Load-time relocation of shared libraries - Eli Bendersky's website

August 25, 2011 at 14:47 Tags Assembly , C & C++ , Linkers and loaders , Linux This article's aim is to explain how a modern operating system makes it possible to use shared libraries with load-time relocation. It focuses on the Linux OS running on 32-bit

eli.thegreenplace.net

 

반응형

'【Fundamental Tech】 > Linux Kernel' 카테고리의 다른 글

프로그램 실행 방식: ELF 바이너리  (0) 2025.10.31
main() 함수 실행 전의 여정  (0) 2025.10.31
NUMA  (0) 2025.01.29
VSCode를 이용한 Linux Kernel 분석  (0) 2025.01.29
깨진 심볼릭 링크 검색/삭제  (0) 2023.05.07

댓글