COM (rozszerzenie pliku)

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
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 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[edytuj | edytuj kod]

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ż[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..