실행 파일

위키백과, 우리 모두의 백과사전.
Grizlupo (토론 | 기여)님의 2013년 11월 16일 (토) 20:32 판 (MZ 추가)
실행 파일 "리얼 모드 부트 로더"의 헥스 덤프

컴퓨터 공학에서 실행 파일은 단순히 데이터만 담고 있는 파일과 달리 암호화된 명령에 따라 지시된 작업을 수행하도록 하는 컴퓨터 파일을 말한다. 인터프리터CPU, 아니면 가상 머신을 위한 명령을 포함하는 파일들은 실행 파일로 생각할 수 있지만 더 구체적으로 말하면 이들은 스크립트바이트코드이다. 실행 파일들은 이진 파일로 불리며 이는 프로그램의 원시 코드와는 대비되는 용어이다.

운영 체제와의 상호 작용

일부 운영 체제파일 확장자로 실행 파일을 구분하거나 메타데이터(유닉스 계열 운영 체제의 "execute" 허가를 만드는 등의 과정을 통해)에 따라 파일을 알아본다. 대부분의 운영 체제는 해당 파일이 올바른 살행 파일 형식인지를 확인하여 명령으로서 우발적으로 부주의하게 수행하는 데서 임의의 비트 시퀀스를 보호할 수 있게 한다. 현대의 운영 체제들은 컴퓨터의 리소스에 대한 제어권을 보유하며 이로써 각 프로그램이 시스템 호출을 하여 권한을 받은 리소스에 접근할 것을 요구한다. 각 운영 체제 계열이 자체적인 호출 구조를 갖고 있으므로 실행 파일들은 일반적으로 특정 운영 체제에 한정된다.

한 운영 체제가 다른 곳에서 동작하게 하는 많은 도구들이 있다. 이는 호환 가능한 응용 프로그램 이진 인터페이스(ABI)와 비슷한 방식을 추가하면서 수행한다. 이를테면 x86 프로세서용 Win32 호환 라이브러리를 갖고 있는 와인이 있다.

포맷

  • COM (.com) (도스)
  • MZ (.exe) (도스, 윈도(일부))
  • PE (.exe, .dll, .ocx, .sys, .scr) (윈도)
  • ELF (유닉스 계열)
  • Mach-O (맥)
  • 헝크 (아미가 운영 체제)

같이 보기