COM (rozszerzenie pliku)

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania
COre iMage (COM)
Rozszerzenia pliku .com
Typ MIME application/octet-stream; charset=binary
Typ plik wykonywalny

COM (z ang. COre iMage[1]) - rozszerzenie nazwy pliku wykonywalnego w systemie DOS i CP/M. Pierwotnie COM oznaczało zwykły plik tekstowy ze zbiorem poleceń do wykonania przez system operacyjny[2].

Format w MS-DOS[edytuj | edytuj kod]

Struktura plików COM jest bardzo prosta, nie zawiera nagłówka ani metadanych, tylko sam kod i dane. Plik binarny ma maksymalnie 65280 (0xFF00 w systemie szesnastkowym) bajtów (nieco mniej niż 64 kB), wszystkie dane oraz kod są trzymane w jednym segmencie. Jest to dość poważną wadą, ponieważ w takim przypadku 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 zaraz po wprowadzeniu 16-bitowych i 32-bitowych procesorów z większymi, segmentowanymi pamięciami, gdzie każdy proces dostaje swój własny segment.
Lista parametrów uruchamianego programu umieszczana jest z przesunięciem 0x0081 (ze spacją), poprzedza ją 8 bitowa długość w offsecie 0x0080 w tym samym segmencie.

Zobacz też[edytuj | edytuj kod]

Przypisy

  1. Borland International, Inc.: Borland Turbo Assembler - User's guide. U.S.A.: 1996, s. 229.
  2. Brian Christian, Tom Markson: The PDP-11 how-to book (ang.). 1982. [dostęp 2012-10-21]. s. Sekcja 2.2.1 - przykład pliku o rozszerzeniu .com oraz sekcja 5.3 - objaśnienie nazwy rozszerzenia..