Какво е ARC файл?
ARC е формат за компресиране на данни и архивиране без загуби, разработен от System Enhancement Associates (SEA). Файловият формат и приложението, което го създава, се наричат ARC. ARC беше много популярен през първите дни на комутируемата BBS, тъй като комбинира функциите на компресиране и архивиране на множество файлове в един и същи файл. По-късно ARC беше заменен от ZIP, който предлагаше по-добри съотношения на компресия.
Файловото разширение .arc се използва от няколко други несвързани типа архивни файлове, като ARC формат, използван от Internet Archive за съхраняване на множество уеб ресурси, различен ARC формат, използван от FreeArc архиватор, различен формат, използван от Nintendo за ресурси и т.н. .
Кратка история на файловия формат ARC
Програмата ARC е написана от Том Хендерсън от System Enhancement Associates през 1985 г. Тази програма групира файловете в един архивен файл и ги компресира. Файловете, генерирани от програмата ARC, използваха разширението .arc. SEA пусна изходния код за ARC през 1986 г., а ARC беше пренесен към Unix и Atari ST от Хауърд Чу през 1987 г.
Фил Кац разработи PKARC и PKXARC за архивиране и извличане на файлове. Файловете работеха с файловия формат ARC и бяха значително по-бързи. За разлика от ARC, Katz раздели функциите за компресиране и архивиране между два различни файла, което намали изискването за памет за изпълнението им.
След съдебното дело между SEA и Katz, SEA се оттегли от пазара на Shareware и разработи ARC+Plus с потребителски интерфейс на цял екран. Форматът ARC вече не е обичаен за компютър.
ARC файлов формат
ARC файлът се състои от поредица от заглавка на файл и файл, последван от маркера за край на архива, както е показано по-долу.
file header 1
file 1
file header 2
file 2
.
.
file header n
file n
EOF
Заглавка на ARC файл
Отместване | Етикет | Тип | Стойност | Описание |
---|---|---|---|---|
00 | ARCID | DB | $1A | |
01 | ARCMTD | DB | 00 | Метод |
02 | ARCFNT | DS | 12 | име на файл |
0E | DB | 00 | ||
0F | ARCNSZ | HEX | 00000000 | Компресиран размер |
13 | ARCDAT | DW | 0000 | Дата на файла (MSDOS) |
15 | ARCTIM | DW | 0000 | Време на файла (MSDOS) |
17 | ARCCRC | DW | 0000 | |
19 | ARCOSZ | HEX | 00000000 | Некомпресиран размер |
1D | ARCFIL | DS | ARCNSZ |
Методи за компресиране
Байтът за метода на компресиране показва използвания метод на компресиране. По-долу са методите за компресиране, използвани за ARC файла.
Метод | Име | Описание |
---|---|---|
0 | Съхранено | Не е използвана компресия |
1 | Опакован | Кодиране с повтаряща се дължина (RLE) |
2 | Стиснат | кодиране на Huffman |
3 | Crunched | LZW с 4K буфер, 12 бита кодове |
4 | Crunched | Първо опаковане, след това LZW 4K буфер с 12 бита |
5 | Crunched | Packing, LZW, 4K буфер, променлива дължина (9-12 бита) |
6 | Смачкан | LZW, 8K буфер, променлива дължина (9-13 бита) |
7 | Натрошен | Опаковка, след това LZW 8K буфер, 2-13 бита (PAK 1.0) |
8 | Дестилиране | Динамичен Huffman с 8K буфер (PAK 2.0) |