Виды архиваторы и их отличия.
Следует различать собственно программу-архиватор, формат архивов и методы
сжатия. Даже один и тот же метод сжатия может иметь варианты реализации.
Например, существует более десятка программ-архиваторов, которые могут создавать
архивы в формате ZIP. В свою очередь данные в формате ZIP могут быть сжаты
различными методами: Deflate, Deflate64, BZip2. Метод Deflate имеет несколько
реализаций с разной скоростью и степенью сжатия (разница порядка 5%). С помощью
этого метода архиватор 7-zip позволяет создавать архивы в формате ZIP и 7Z.
Обычно архиваторы могут создавать архивы в собственном эксклюзивном формате с
использованием своих оригинальных методов. Например, архиватор RAR позволяет
создавать архивы RAR. В формате архива и методах сжатия заключаются основные
преимущества того или иного архиватора.
В простейшем случае архиватор позволяет только упаковать или распаковать один
файл. Кроме собственно сжатия данных, современные архиваторы обеспечивают
некоторые дополнительные функции. Можно выделить несколько основных:
* сжатие некоторых файлов и целых директорий;
* создание самораспаковывающихся (SFX) архивов. То есть для распаковки архива
программа-архиватор не требуется;
* изменение содержимого архива;
* шифрование содержимого архива;
* информация для восстановления архива при частичном повреждении и возможность
восстановления поврежденных архивов;
* разбивка архива на несколько частей или томов;
* консольная версия программы для работы из командной строки;
* графическая (GUI) версия программы.
Стоит отметить, что, несмотря на формальное наличие, реализация каждой
дополнительной функции может быть выполнена на совершенно разном уровне.
Кроме различий в функциональности, можно разбить архиваторы на две группы:
асимметричные и симметричные. Асимметричные архиваторы требуют для операции
распаковки значительно меньше времени и оперативной памяти, чем для операции
упаковки. Это позволяет быстро получать содержимое архива на маломощных
компьютерах. Симметричные архиваторы требуют для операций упаковки и распаковки
одинаковое время и объем оперативной памяти. Использование таких архиваторов на
широком парке компьютеров или для оперативного доступа к содержимому архива
ограничено. Известный архиватор RAR в качестве основного использует
асимметричный словарный метод сжатия, а для текстов может использовать
симметричный PPM-метод. Таким образом, распаковка архивов RAR, сжатых с
максимальной степенью сжатия, может быть невозможна на компьютерах с
ограниченным объемом оперативной памяти. Все или почти все передовые архиваторы
с высокой степенью сжатия являются симметричными.
Точной статистики по распространенности архиваторов у меня нет. Я выскажу свою
субъективную точку зрения на основе личного опыта. Безусловно, самым
распространенным архиватором являются ZIP и его модификации. По своей
распространенности он значительно превосходит ближайших конкурентов. Следом идут
RAR и ACE. В последние годы встречается архиватор 7-zip. Других архиваторов и
архивов лично мы не встречали. Исключение составляют некогда популярные ARJ и
LHA. В данный момент они не актуальны из-за очень низкой степени сжатия.
Несмотря на очень скромные данные о распространенности архиваторов, их
существует большое множество. Основная масса относится к категории
экспериментальных и архиваторов с ограниченной функциональностью. Тем не менее
каждый их них позволяет выполнять собственно процедуру сжатия данных. Меньшая
распространенность увеличивает вероятность ошибок в программе. К ним стоит
относиться с некоторой осторожностью. Например, при проведении тестирования была
найдена ошибка в архиваторе WinRK (PWCM), которую, однако, оперативно исправили. |