.ARC вариант №
ARC — это формат сжатия и архивирования данных без потерь, разработанный компанией System Enhancement Associates (SEA). Формат файла и приложение, которое его создает, называются ARC. ARC был очень популярен в первые дни BBS с коммутируемым доступом, поскольку он сочетал в себе функции сжатия и архивирования нескольких файлов в одном файле. Позже ARC был заменен на ZIP, который предлагал лучшую степень сжатия.
Расширение файла .arc используется несколькими другими, не связанными между собой типами архивных файлов, такими как формат ARC, используемый Интернет-архивом для хранения нескольких веб-ресурсов, другой формат ARC, используемый архиватором FreeArc, другой формат, используемый Nintendo для ресурсов и т. д. .
Краткая история формата файла ARC
Программа ARC была написана Томом Хендерсоном из System Enhancement Associates в 1985 году. Эта программа группировала файлы в один архивный файл, а также сжимала их. Файлы, сгенерированные программой ARC, имели расширение .arc. SEA выпустила исходный код ARC в 1986 году, а ARC был перенесен на Unix и Atari ST Говардом Чу в 1987 году.
Фил Кац разработал PKARC и PKXARC для архивирования и извлечения файлов. Файлы работали с форматом файлов ARC и были значительно быстрее. В отличие от ARC, Кац разделил функции сжатия и архивирования между двумя разными файлами, что уменьшило потребность в памяти для их запуска.
После судебного процесса между SEA и Katz SEA ушла с рынка условно-бесплатного программного обеспечения и разработала ARC+Plus с полноэкранным пользовательским интерфейсом. Формат ARC больше не используется на ПК.
Формат файла ARC
Файл ARC состоит из последовательности заголовка файла и файла, за которыми следует маркер конца архива, как показано ниже.
file header 1
file 1
file header 2
file 2
.
.
file header n
file n
EOF
Заголовок файла ARC
Смещение | Ярлык | Тип | Значение | Описание |
---|---|---|---|---|
00 | ARCID | БД | $1A | |
01 | ARCMTD | БД | 00 | Метод |
02 | ARCFNT | DS | 12 | имя файла |
0Е | ДБ | 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 | Сжатый | Кодирование Хаффмана |
3 | Сжатый | LZW с буфером 4K, 12-битные коды |
4 | Crunched | Сначала упаковка, затем буфер LZW 4K с 12 битами |
5 | Crunched | Упаковка, LZW, буфер 4K, переменная длина (9-12 бит) |
6 | Сжатый | LZW, буфер 8K, переменная длина (9-13 бит) |
7 | Crushed | Упаковка, затем буфер LZW 8K, 2-13 бит (PAK 1.0) |
8 | Distill | Динамический Хаффман с буфером 8K (PAK 2.0) |