ELF(Executable and Linkable Format) 바이너리 포맷은 유닉스/리눅스에서 가장 흔히 사용하는 파일 포맷이다. 1. ELF 바이너리 포맷 구조 Program header table: 재배치 불가능한 ELF object (ex, 실행 바이너리) Section header table: 재배치(relocation) 가능한 object (object 파일) 2. ELF 헤더 ELF 헤더에는 어디서부터 어디까지가 program/section header인지에 대한 정보가 들어있다. readelf -h [ELF object] 명령을 실행하면 아래와 같이 헤더 정보를 읽을 수 있다. 위는 so 파일이고 object 파일일 경우 program header가 0으로 설정이 된다. 3. progra..