Relocatable Ojbect file (재배치 가능 목적 파일)
재배치 가능 목적 파일은 코드 및 데이터로 이뤄져 있으며 다른 재배치 가능 목적 파일들과 결합이 가능하다.
Executable object file (실행 가능 목적 파일)
메모리에 직접 복사될 수 있고 실행될 수 있는 형태로 바이너리 코드와 데이터를 포함합니다.
Shared object file (공유 목적 파일)
로드타임, 또는 런타임시 동적으로 링크되고 메모리에 로드될 수 있는 특수한 유형의 재배치 가능 목적파일입니다.
컴파일러와 어셈블러는 재배치 가능 목적 파일 을 생성한다.
공유 목적 파일 또한 재배치 가능 목적 파일의 한 종류이므로 이 또한 생성된다.
링커는 실행 가능한 목적파일 을 생성한다.
목적파일들은 시스템에 따라 다르다, 우리는 x86-64 리눅스와 유닉스 시스템들이 사용하는 Executable and Linkable Foramt (ELF) 을 집중적으로 다룰 것이다!