목적 파일

컴퓨터 과학에서 목적 코드(Object code)또는 목적 파일은 컴파일러나 어셈블러가 소스 코드 파일을 컴파일 또는 어셈블해서 생성하는 파일이다. 목적 파일들은 기계어나 혹은 이에 준하는 RTL과 같은 이진 코드로 이루어져 있다. 링커는 여러 개의 목적 파일을 묶어 커널과 연결함으로써 실행 파일을 만들거나, 혹은 라이브러리를 만들어내는 데에 쓰인다. 목적 파일에서 필수적인 요소는 기계어(컴퓨터의 CPU가 직접 실행하는 코드)이다. 임베디드 시스템을 위한 목적 파일들은 기계어 이외에는 아무것도 포함하고 있지 않다. 그러나 목적 파일들은 또한 링크나 디버그를 위해 런타임 정보, 릴로케이션 정보, 프로그램 심볼의 코드로 사용하는 데이터를 포함한다.

잘 알려진 목적 파일 포맷 
목적 파일 포맷은 목적 코드와 관련 데이터의 저장을 위해 쓰이는 컴퓨터 파일 포맷이다.

각기 다른 수많은 목적 파일 포맷이 있다. 원래는 개별 종류의 컴퓨터가 저만의 고유 포맷을 소유했으나 유닉스와 기타 포팅된 운영 체제가 출현하면서 COFF, ELF와 같은 일부 포맷들이 정의되어 여러 종류의 시스템에 쓰이게 되었다. 동일한 파일 포맷이 링커 입력과 출력으로서 모두 쓰일 수 있으며, 이러한 까닭에 라이브러리와 실행 파일 포맷으로서 사용될 수 있다.

도스 
 .COM
 도스 실행 파일 (MZ)

임베디드 
 IEEE-695
 S 레코드

매킨토시 
 PEF/CFM
 Mach-O (넥스트스텝, 맥 OS)

유닉스 
 a.out
 COFF (시스템 V)
 ECOFF (Mips)
 XCOFF (AIX)
 ELF (SVR4; 대부분의 현대 시스템에서 쓰임)
 Mach-O (NeXT, OS X)

마이크로소프트 윈도 
16비트 새로운 실행 파일
 PE 포맷

기타 
 IBM 360 목적 포맷
 NLM
 OMF (VME)
 SOM (HP)
 XBE - 엑스박스 실행 파일
APP - 심비안 OS 실행 파일 포맷.
 RDOFF
 헝크 - 아미가 OS

참조

같이 보기 
 링커 (컴퓨팅)

기계어