Архивы бывают разные...

И опять об архивных форматах

Продолжим разговор о форматах файлов, содержащих в себе другие файлы, - то есть, об архивах. И сегодня речь пойдёт об известных, но в настоящее время уже значительно менее распространённых форматах подобных файлов.


JAR

Этот тип файлов архиваторы очень любят ассоциировать с самими собой, что, в принципе, вполне объяснимо, поскольку по своей внутренней структуре файл данного формата действительно является архивом. Тем не менее, по своей сути это не архив, а исполняемый файл Java-приложения, а потому желание архиваторов ассоциировать данный тип файлов с собой можно считать не вполне корректным. Конечно, современные Java-приложения, как правило, не сильно страдают из-за такого вольного обращения архиваторов с ассоциациями файлов, поскольку запускают Java-машину через ярлыки в явном виде.

Если же смотреть на JAR-файл исключительно как на архив, то в нём можно увидеть знакомые черты ZIP-архива, которым он, по сути, и является. Сегодня, кстати, ZIP-архивы подобным образом используются очень много где, и тот же Microsoft Office, начиная с 2007-й версии, использует именно файлы, являющиеся по своей природе ZIP-архивами. Внутри этих файлов лежат XML'и с текстом и различными объектами, вставляемыми в текст. Собственно, давний конкурент Microsoft Office, OpenOffice.org, применяет подобный формат файлов (впрочем, конечно же, не совместимый с Microsoft'овским) уже достаточно давно. Переходят на XML'и внутри ZIP-архива и другие производители софта - например, такие файлы активно используются в новых версиях математического пакета MathCAD. Почему все эти производители выбирают именно ZIP? Видимо, дело в том, что формат имеет открытые спецификации, не требует никаких лицензионных отчислений, хорошо оттестирован на многих поколениях пользователей... Словом, вряд ли в этом плане ZIP'у есть альтернатива.

 

Кстати, в Java архивы, содержащие в себе приложения, могут также иметь расширение WAR (для web-приложений) и EAR (для Entrprise-приложений).


ARC

Ещё один формат, пришедший к нам, образно говоря, из далёкой древности. История его начинается в далёком 1985 году, когда компания System Enhancement Associates представила публике программу, которая так и называлась - ARC. Как несложно догадаться, эта программа была не чем иным, как архиватором. Правда, в отличие от современных архиваторов, ARC не умел делать одну очень важную вещь - деревья директорий внутри архивов. Это нашло свое отражение и в формате ARC, который также, к сожалению, обладает этим недостатком. Естественно, эта особенность не могла не сыграть своей роли в дальнейшей судьбе данного архивного формата.

Формат этот, как и сам архиватор ARC, активно развивался вплоть до 1992 года, когда разработавшая его фирма System Enhancement Associates была продана одной из японских компаний. Собственно, именно с тех пор началось постепенное вытеснение этого архивного формата конкурентами (в том числе и сумевшим попасть на вершину форматом ZIP). Сегодня о "былой роскоши" напоминает только поддержка распаковки ARC-архивов множеством различных архиваторов.

К слову, ARC относится к тем форматам, для которых одно расширение может, на самом деле, значить несколько разных форматов. То есть не факт, что вы сможете распаковать ARC-файл с помощью архиватора, который декларирует поддержку этого формата. Просто потому, что формат, на самом-то деле, не будет соответствовать расширению.


SQX

Это сравнительно молодой архивный формат, не получивший, впрочем, такого распространения, как, например, тот же 7Z. Впрочем, и по качеству компрессии данный формат до 7Z и RAR'а не дотягивает. Хотя, если говорить о сжатии, то оно всё равно лучше, чем у "стандартных" ZIP'ов или, например, GZIP'ов с TAR'ами.

SQX поддерживается сравнительно небольшим количеством архиваторов, хотя если вы вдруг захотите сами написать архиватор с поддержкой данного формата, то к вашим услугам совершенно свободно доступный SDK для работы с SQX-архивами. Найти его можно в Сети по адресу www.sqx-archiver.org/index.html. Там же, кстати, можно найти небольшую бесплатную утилиту для распаковки SQX-архивов, если вам всё-таки встретится какой-нибудь экзотический архив в данном формате.


ZOO

Ещё один формат, разработанный в середине семидесятых и поддерживающийся в архиваторах, скажем так, рудиментарно. Данный формат, пожалуй, известен более всего благодаря своему достаточно своеобразному расширению (по-английски "zoo" означает "зоопарк"). Особенно широко распространён этот формат был в своё время в группах Usenet, а если говорить о платформах, то наибольшую популярность он приобрёл на сейчас уже не представляющей особого интереса платформе Amiga. Сейчас уже архивы этого формата не особенно распространены, однако могут встречаться в сборниках каких-нибудь раритетных файлов.


BZIP2

В первой части разговора об архивных форматах я рассказал вам о таком замечательном формате, как GZ или GZip. Однако это не единственный формат, который используется для потокового сжатия на UNIX-платформах. Другой такой формат - это BZIP2, сжатые им файлы имеют расширение BZ2. TAR-архивы, дополнительно сжатые с помощью BZIP2, часто также имеют расширение TBZ. При этом, правда, BZIP2 всё-таки менее распространён, чем GZIP, что, в принципе, легко объясняется тем, что появился этот способ сжатия значительно позже. При этом, конечно, BZIP2 сжимает данные лучше своего более старого "конкурента", зато и значительно дольше. Впрочем, это вполне естественно, ведь почти всегда алгоритмы, обеспечивающие лучшую компрессию, работают заметно дольше. Поэтому если важна скорость сжатия и распаковки, то использовать BZIP2 не рекомендуется.

Вадим СТАНКЕВИЧ

Версия для печатиВерсия для печати

Номер: 

44 за 2009 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!
 

Комментарии

Аватар пользователя qwerty
аўтар як заўжды слаба разьбіраецца ў пытаньні, пра якое піша: ані gzip, ані bzip2 не зьяўляюцца архіватарамі, гэта кампрэсары.