Rozszerzenia pliku |
.com |
---|---|
Typ MIME |
application/octet-stream; charset=binary |
Typ |
COM (z ang. core image[1]) – rozszerzenie nazwy pliku wykonywalnego w systemach operacyjnych CP/M i DOS. Pierwotnie COM oznaczało zwykły plik tekstowy ze zbiorem poleceń do wykonania przez system operacyjny[2], tzw. plik wsadowy.
Format w MS-DOS
Struktura plików COM jest bardzo prosta, nie zawiera nagłówka ani metadanych, tylko sam skompilowany kod i dane, a wszystkie odwołania w programie są bliskie. Plik binarny może mieć maksymalnie 65280 (tj. 0xFF00 w systemie szesnastkowym) bajtów, ponieważ musi mieścić się w jednym 64 kB segmencie pamięci. Są to dość poważne wady tego formatu, ponieważ programy COM nie mogą być łączone z modułami zewnętrznymi.
Programy tego typu są ładowane przez system operacyjny zawsze pod stały adres offsetowy 0x0100, skąd są wykonywane. Nie było to problemem w przypadku ośmiobitowych maszyn, ale jest to głównym powodem dlaczego ten format wyszedł z użycia po wprowadzeniu 16-bitowych i 32-bitowych procesorów z większymi, segmentowanymi pamięciami, gdzie każdy proces dostaje swój własny obszar pamięci.
Lista parametrów uruchamianego programu umieszczana jest z przesunięciem 0x0081 (ze spacją), poprzedza ją 8-bitowa wartość w offsecie 0x0080, określająca długość łańcucha listy parametrów.
Zobacz też
Przypisy
- ↑ Borland International, Inc.: Borland Turbo Assembler – User's guide. U.S.A.: 1996, s. 229.
- ↑ Brian Christian, Tom Markson: The PDP-11 how-to book. 1982. s. Sekcja 2.2.1 – przykład pliku o rozszerzeniu .com oraz sekcja 5.3 – objaśnienie nazwy rozszerzenia.. [dostęp 2012-10-21]. (ang.).