이 글은 리눅스(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 |
댓글