(작성일 2022.10.14)
잠깐 생각이 나서 DOS용 com 파일에 대하여 설명합니다.
com 파일의 대표적인 파일은 MS-DOS의 필수파일인 command.com 입니다. msdos.sys config.sys와 함께 쓰이는 MS-DOS의 기본파일입니다. command.com 파일은 사용자의 dos 커맨드를 받아들이기 위한 해석기입니다.
아래는 command.com이 출력하는 MS-DOS에서의 프롬프트의 예입니다.
C:\>
당시에는 실행시킬 수 있는 파일 확장자가 두가지 있었습니다.
1. exe 파일
2. com 파일
MS-DOS가 사용될 당시의 시스템은 16bit였습니다. 16bit로 표현 가능한 메모리의 범의는 64Kbyte 밖에 되지 않았기에, 640Kbyte 또는 그 이상의 메모리를 억세스하기 위한 기계어코드가 따로 있었습니다. 메모리의 주소를 저장할 때도 16bit가 가 넘는 주소값을 사용하였습니다.
.com 파일은 사용하는 메모리 주소 범위를 16bit로 한정하고, 로딩되는 위치의 하위 16bit를 0x0000으로 고정합니다. 이렇게 함으로써 모든 메모리의 주소를 16bit로 한정합니다. 또한 메모리를 항상 0x0000번지부터 시작하므로, 실행할 시에 메모리주소를 보정하지 않아도 됩니다. 따라서 실행파일의 크기를 줄일 수 있습니다.
당시에는 메모리 및 보조기억장치의 비용이 비쌌기 때문에 .com이라는 특별한 형식을 사용할 필요가 있었습니다. MS-DOS 시절에도 .com 파일은 많이 사용되지 않았습니다. 32bit 이상의 시스템이 사용되고 실행파일의 크기가 커지면서 .com 파일은 자연스럽게 쓰이지 않게 되었습니다.
궁금하신 점 있으시면 댓글 주세요.
언제나 감사드립니다.
메모장을 사용하여, 인코딩을 빠르고 쉽게 변환하는 방법 (0) | 2022.10.21 |
---|---|
Visual Studio 소스파이 폴더 용량 확보 스크립트 (0) | 2022.10.19 |
캡쳐한 이미지를 파일이름으로 변환 (0) | 2022.08.17 |
HDD 빈공간 지우는 방법, 지우면서 시간측정하기 (0) | 2022.05.04 |
도서리뷰 - 21개의 작고 재미난 파이썬 프로젝트 (0) | 2022.04.22 |
댓글 영역