COM 파일
위키백과 ― 우리 모두의 백과사전.
파일 확장자 .com은 다양한 컴퓨터 시스템에서 다른 목적으로 사용되어 왔다. 초기에, 이 용어는 "명령 파일"을 대표하는 말이었으며 운영 체제에 내보낼 명령어를 포함하는 텍스트 파일이었다. 1970년대로 거슬러 올라가서, 디지털 이큅먼트 코퍼레이션 미니컴퓨터 및 메인프레임 컴퓨터 시스템에 실용적으로 쓰이게 되었다.
마이크로컴퓨터의 도입과 더불어, 확장자 .com으로 끝나는 파일의 사용은 점차 바뀌어 갔다. MS-DOS 호환 도스와 8 비트 CP/M에서, COM 파일은 단순히 실행 파일의 종류이다.
이 파일 형식의 이름은 파일 확장자 .com에서 나온 것이며(최상위 도메인 .com과 헷갈리지 말 것) 각 파일에 쓰이는 초기의 확장자였다. 그러나 CP/M과 매우 초기의 MS-DOS 버전을 제외하고는 파일 형식과 파일 확장자 사이의 실제적인 통합은 없었다.
[편집] 플랫폼 지원
이 포맷은 여전히 현대의 윈도 기반의 플랫폼의 실행 파일이지만 MS-DOS 가상 구현 체계에서 돌아간다. x64 계열의 운영 체제에서는 이러한 가상 구현 체계가 없으므로 실행되지 않는다. (역자 주: 가상 구현에 대해서는 NTVDM 참조)
COM 파일은 또한 도스박스와 같은 도스 에뮬레이터를 사용하여 실행할 수 있다. 이 에뮬레이터는 모든 플랫폼에서 지원한다. "COM"은 "core image"(코어 이미지)의 준말이며, 이러한 .com 파일이 컴퓨터에서 실행할 수 있는 기본 명령어에 대한 코드를 포함했기 때문에 "command"(명령어)로 해석되기도 한다.
[편집] 이진 포맷
COM 포맷은 가장 단순한 실행 포맷이며, 메타데이터는 없고, 코드와 데이터만 포함하고 있으며 일부 세그먼트의 오프셋 0x0100에서 로드되어 실행된다. 세그멘테이션 모델이 잘 동작하기 때문에 구조 배치가 필요하지 않다.
[편집] 실행 우선도
실행 파일로는 EXE, COM, BAT 등이 있다. 이를테면, 한 디렉터리가 COM 파일과 EXE 파일이 확장자만 다르고 같은 이름을 가지고 있다고 치자. 이 경우 COM 파일이 우선하여 실행된다.