Методы сжатия данных имеют достаточно длинную историю развития, которая началась задолго до появления первого компьютера. В этой статье будет произведена попытка дать краткий обзор основных теорий, концепций идей и их реализаций, не претендующий, однако, на абсолютную полноту. Более подробные сведения можно найти, например, в Кричевский Р.Е. , Рябко Б.Я. , Witten I.H. , Rissanen J. , Huffman D.A., Gallager R.G. , Knuth D.E. , Vitter J.S. и др.
Сжатие информации - проблема, имеющая достаточно давнюю историю, гораздо более давнюю, нежели история развития вычислительной техники, которая (история) обычно шла параллельно с историей развития проблемы кодирования и шифровки информации. Все алгоритмы сжатия оперируют входным потоком информации, минимальной единицей которой является бит, а максимальной - несколько бит, байт или несколько байт. Целью процесса сжатия, как правило, есть получение более компактного выходного потока информационных единиц из некоторого изначально некомпактного входного потока при помощи некоторого их преобразования. Основными техническими характеристиками процессов сжатия и результатов их работы являются:
Степень сжатия (compress rating) или отношение (ratio) объемов исходного и результирующего потоков;
Скорость сжатия - время, затрачиваемое на сжатие некоторого объема информации входного потока, до получения из него эквивалентного выходного потока;
Качество сжатия - величина, показывающая на сколько сильно упакован выходной поток, при помощи применения к нему повторного сжатия по этому же или иному алгоритму.
Существует несколько различных подходов к проблеме сжатия информации. Одни имеют весьма сложную теоретическую математическую базу, другие основаны на свойствах информационного потока и алгоритмически достаточно просты. Любой способ подход и алгоритм, реализующий сжатие или компрессию данных, предназначен для снижения объема выходного потока информации в битах при помощи ее обратимого или необратимого преобразования. Поэтому, прежде всего, по критерию, связанному с характером или форматом данных, все способы сжатия можно разделить на две категории: обратимое и необратимое сжатие.
Под необратимым сжатием подразумевают такое преобразование входного потока данных, при котором выходной поток, основанный на определенном формате информации, представляет, с некоторой точки зрения, достаточно похожий по внешним характеристикам на входной поток объект, однако отличается от него объемом. Степень сходства входного и выходного потоков определяется степенью соответствия некоторых свойств объекта (т.е. сжатой и несжатой информации, в соответствии с некоторым определенным форматом данных), представляемого данным потоком информации. Такие подходы и алгоритмы используются для сжатия, например, данных растровых графических файлов с низкой степенью повторяемости байтов в потоке. При таком подходе используется свойство структуры формата графического файла и возможность представить графическую картинку приблизительно схожую по качеству отображения (для восприятия человеческим глазом) несколькими (а точнее n) способами. Поэтому, кроме степени или величины сжатия, в таких алгоритмах возникает понятие качества, т.к. исходное изображение в процессе сжатия изменяется, то под качеством можно понимать степень соответствия исходного и результирующего изображения, оцениваемая субъективно, исходя из формата информации. Для графических файлов такое соответствие определяется визуально, хотя имеются и соответствующие интеллектуальные алгоритмы и программы. Необратимое сжатие невозможно применять в областях, в которых необходимо иметь точное соответствие информационной структуры входного и выходного потоков. Данный подход реализован в популярных форматах представления видео и фото информации, известных как JPEG и JFIF алгоритмы и JPG и JIF форматы файлов.
Обратимое сжатие всегда приводит к снижению объема выходного потока информации без изменения его информативности, т.е. - без потери информационной структуры. Более того, из выходного потока, при помощи восстанавливающего или декомпрессирующего алгоритма, можно получить входной, а процесс восстановления называется декомпрессией или распаковкой, и только после процесса распаковки данные пригодны для обработки в соответствии с их внутренним форматом.
В обратимых алгоритмах кодирование как процесс можно рассматривать со статистической точки зрения, что еще более полезно, не только для построения алгоритмов сжатия, но и для оценки их эффективности. Для всех обратимых алгоритмов существует понятие стоимости кодирования. Под стоимостью кодирования понимается средняя длина кодового слова в битах. Избыточность кодирования равна разности между стоимостью и энтропией кодирования, а хороший алгоритм сжатия всегда должен минимизировать избыточность (напомним, что под энтропией информации понимают меру ее неупорядоченности.). Фундаментальная теорема Шеннона о кодировании информации говорит о том, что "стоимость кодирования всегда не меньше энтропии источника, хотя может быть сколь угодно близка к ней". Поэтому, для любого алгоритма, всегда имеется некоторый предел степени сжатия, определяемый энтропией входного потока.
Перейдем теперь непосредственно к алгоритмическим особенностям обратимых алгоритмов и рассмотрим важнейшие теоретические подходы к сжатию данных, связанные с реализацией кодирующих систем и способы сжатия информации.
Сжатие способом кодирования серий
Наиболее известный простой подход и алгоритм сжатия информации обратимым путем - это кодирование серий последовательностей (Run Length Encoding - RLE). Суть методов данного подхода состоит в замене цепочек или серий повторяющихся байтов или их последовательностей на один кодирующий байт и счетчик числа их повторений. Проблема всех аналогичных методов заключается лишь в определении способа, при помощи которого распаковывающий алгоритм мог бы отличить в результирующем потоке байтов кодированную серию от других - некодированных последовательностей байтов. Решение проблемы достигается обычно простановкой меток в начале кодированных цепочек. Такими метками могут быть, например, характерные значения битов в первом байте кодированной серии, значения первого байта кодированной серии и т.п. Данные методы, как правило, достаточно эффективны для сжатия растровых графических изображений (BMP, PCX, TIF, GIF), т.к. последние содержат достаточно много длинных серий повторяющихся последовательностей байтов. Недостатком метода RLE является достаточно низкая степень сжатия или стоимость кодирования файлов с малым числом серий и, что еще хуже - с малым числом повторяющихся байтов в сериях.
Сжатие без применения метода RLE
Процесс сжатия данных без применения метода RLE можно разбить на два этапа: моделирование (modelling) и, собственно, кодирование (encoding). Эти процессы и их реализующие алгоритмы достаточно независимы и разноплановы.
Процесс кодирования и его методы
Под кодированием обычно понимают обработку потока символов (в нашем случае байтов или полубайтов) в некотором алфавите, причем частоты появления символов в потоке различны. Целью кодирования является преобразование этого потока в поток бит минимальной длины, что достигается уменьшением энтропии входного потока путем учета частот символов. Длина кода, представляющего символы из алфавита потока должна быть пропорциональна объему информации входного потока, а длина символов потока в битах может быть не кратна 8 и даже переменной. Если распределение вероятностей частот появления символов из алфавита входного потока известно, то можно построить модель оптимального кодирования. Однако, ввиду существования огромного числа различных форматов файлов задача значительно усложняется т.к. распределение частот символов данных заранее неизвестно. В таком случае, в общем виде, используются два подхода.
Первый заключается в просмотре входного потока и построении кодирования на основании собранной статистики (при этом требуется два прохода по файлу - один для просмотра и сбора статистической информации, второй - для кодирования, что несколько ограничивает сферу применения таких алгоритмов, т.к., таким образом, исключается возможность однопроходного кодирования "на лету", применяемого в телекоммуникационных системах, где и объем данных, подчас, не известен, а их повторная передача или разбор может занять неоправданно много времени). В таком случае, в выходной поток записывается статистическая схема использованного кодирования. Данный метод известен как статическое кодирование Хаффмена .
|
ВведениеАрхиваторами мы пользуемся постоянно. На нашем сайте имеется подробное (пусть и давно написанное) описание наиболее популярных программ-архиваторов (Архиваторы: Взгляд со стороны
), которое мы здесь повторять не будем, а займемся только алгоритмами сжатия, которые применяются в этих программах. В чем здесь проблема? Современные архиваторы предоставляют нам возможность на выбор использовать несколько алгоритмов сжатия. Вот, например, характеристики некоторых программ...
Форматы, поддерживаемые архиваторами
Архиватор | Упаковка и распаковка | Только распаковка |
---|---|---|
WinZip | ZIP | TAR, GZIP, BH, ARJ, LZH, ARC |
WinRar | RAR, ZIP | CAB, ARJ, LZH,TAR, GZ, ACE, UUE, BZ2, JAR, JSO |
WinAce | ACE, ZIP, LHA, MSCAB | RAR, ARC, ATJ, GZIP, TAR ZOO |
7-Zip | 7Z, ZIP, GZIP, TAR, BZIP2 | RAR, CAB, ARJ, CPIO, RPM, DEB, SPLIT |
Power Archiver | TAR, BH, CAB, LHA, ZIP | RAR, ACE, ARJ, GZIP, BZIP2, ARC, ZOO |
В зависимости от обстоятельств, мы применяем архиватор как компрессор, от которого требуется сжать информацию для более быстрой передачи по каналам связи (почта и Интернет). В других случаях большее значение имеет функция собственно архивации, то есть преобразование информации в компактный вид (один файл), чтобы избавиться от разукомплектации и, кроме того, сократить место, занимаемое на диске за счет файловой таблицы. Соответственно, большой интерес представляет показатель сжатия исходной информации и показатель скорости переработки исходной информации. Целью нашего исследования является определение абсолютных и относительных показателей степени сжатия и быстродействия алгоритмов (форматов), которые предоставляются в наше распоряжение архиваторами, указанными в таблице...
Содержание исследования планируется в следующем виде:
1. Создание комплексного и частных (по типам файлов) наборов информации (папок) для проведения испытаний (тестов).
2. Проведение предварительных тестов на комплексном наборе и уточнение (по результатам) плана дальнейших локальных испытаний.
3. Обработка и анализ результатов с обоснованием рекомендаций по практическому применению разных алгоритмов (форматов) архивации.
В качестве показателя степени сжатия принимается процентное отношение размера сжатой папки к ее исходному размеру, а в качестве показателя быстродействия - скорость переработки как частное от деления исходного размера в килобайтах на время переработки в секундах. Собственно, измерения выполняются только в отношении времени (секундомером). Ошибка измерения времени может исказить показатель быстродействия, когда этот показатель очень большой (более 1000 кб/сек). В других случаях ошибкой можно пренебречь.
Определение общих характеристик основных архивных форматов
Для испытаний использовался материал, имитирующий некоторую "пользовательскую корзину", составленную из файлов формата DOC, HTM, JPG, MP3, PDF, TXT. Всего корзина содержит 359 папок и 3337 файлов, и имеет суммарный размер 208893 Кбайт (около 204 Мбайт). Состав этого набора приведен в следующей таблице:Состав набора файлов для испытаний
Тип | Количество папок | Количество файлов | Размер, Кбайт | На диске, Кбайт |
---|---|---|---|---|
TXT | 0 | 2 | 34781 | 34783 |
HTM | 329 | 2869 | 30913 | 36962 |
DOC | 3 | 24 | 31443 | 31474 |
0 | 1 | 33691 | 33694 |
|
JPG | 26 | 430 | 40493 | 41382 |
MP3 | 1 | 11 | 37571 | 37589 |
|
||||
Итого | 359 | 3337 | 208893 | 215884 |
Каждое испытание заключалось в проведении цикла архивации с фиксацией времени работы архиватора от момента нажатия кнопки Add до момента открытия окна с содержанием полученного архивного файла.
Тестировавшиеся программы:
WinZip 8.1 SR-1
WinRar 3.30
WinAce 2.5
7Zip 3.13
Power Archiver 8.70 07b
Информация о конфигурации системы
Процессор Intel Celeron 1700MHz
256 Mb (DDR SDRAM)
HDD ST360015A (60 Gb, 7200PRM)
Windows 2000 Pro, SP3
Результаты испытаний приведены в следующих таблицах:
Результаты тестирования для формата ZIP
Архиватор / Режим | Размер, Кбайт | Время, мин.-сек. | Сжатие | Скорость, Кбайт/с |
---|---|---|---|---|
|
||||
WinZip | |
|||
Без сжатия | 208893 | - | - | - |
Норма | 146408 | 2-00 | 70.0% | 1740 |
Максимум | 145884 | 2-45 | 69.8% | 1266 |
Быстро | 147690 | 1-58 | 70.7% | 1770 |
Очень быстро | 149450 | 1-50 | 71.5% | 1899 |
|
||||
WinRar | |
|||
Обычно | 146 078 | 2-22 | 69.9% | 1471 |
Максимум | 145881 | 3-07 | 69.8% | 1117 |
|
||||
WinAce | |
|||
Норма | 146 418 | 2-28 | 70.1% | 1411 |
Максимум | 145844 | 2-40 | 69.8% | 1305 |
|
||||
7-Zip | |
|||
Норма/Deflate | 145 480 | 3-22 | 69.6% | 1034 |
Ультра/Deflate | 145 341 | 5-55 | 69.6% | 588 |
Ультра/Deflate64 | 144924 | 6-10 | 69.4% | 565 |
|
||||
Power Archiver | |
|||
Норма | 146074 | 3-40 | 69.9% | 950 |
Максимум | 145948 | 3-42 | 69.9% | 941 |
В целом, сжатие, получаемое форматом ZIP, примерно одного порядка, и мало зависит от архиватора - за исключением архиватора 7-ZIP, в котором с помощью изменения метода сжатия можно несколько улучшить показатель и для формата ZIP. Размер словарей (архиваторы WinRar и 7-ZIP) специально в данной серии испытаний не изменялся, а устанавливался автоматически (по умолчанию).
Режим | Размер, Кбайт | Время, мин.-сек. | Сжатие | Скорость, Кбайт/с |
---|---|---|---|---|
Без сжатия | 208893 | - | - | - |
Store | 209129 | 0-58 | 100.1% | 3601 |
Fastest | 144017 | 6-00 | 68.9% | 580 |
Fast | 143281 | 6-22 | 68.6% | 547 |
Normal | 142830 | 6-40 | 68.4% | 522 |
Good | 139826 | 6-58 | 66.9% | 499 |
Best | 140023 | 7-25 | 67.0% | 469 |
Best (64kb) | 140685 | 5-40 | 67.3% | 614 |
В настройке режима возможно изменение размера словаря в пределах 64 - 4096 килобайт. По умолчанию устанавливается максимальный размер (4096 Кб), с которым и получены результаты в данной таблице. Только в строке Best (64kb) был установлен минимальный размер - 64 килобайта. Очевидно, что полученное изменение сжатия и быстродействия может служить аналогом для всех других строк этой таблицы.
Строки Good и Best проверялись, и их значения полностью подтвердились, поэтому нелогичный переход между ними нельзя считать следствием ошибок при тестировании.
Результаты тестирования формата ACE
Режим | Размер, Кбайт | Время, мин.-сек. | Сжатие | Скорость, Кбайт/с |
---|---|---|---|---|
Без сжатия | 208893 | - | - | - |
Normal | 132978 | 8-30 | 63.7% | 410 |
Maximum | 132918 | 8-42 | 63.6% | 400 |
Good | 132925 | 9-50 | 63.6% | 354 |
Fast | 133216 | 8-53 | 63.8% | 397 |
Super Fast | 133273 | 8-46 | 63.8% | 397 |
Store | 209136 | 1-48 | 100.1% | 1934 |
Изменения режима работы архиватора WinAce в нашем случае мало влияют на показатели сжатия - разброс находится в пределах десятых долей процента.
Результаты тестирования формата 7z
Режим | Размер, Кбайт | Время, мин.-сек. | Сжатие | Скорость, Кбайт/с |
---|---|---|---|---|
Без сжатия | 208893 | - | - | - |
Нормальный | 130964 | 9-24 | 64.2% | 362 |
Максимальный | 130000 | 13-51 | 63.7% | 246 |
Быстрый | 141922 | 4-16 | 69.6% | 797 |
Ультра (1 Мб) | 131392 | 8-47 | 64.4% | 387 |
Ультра (6 Мб) | 130101 | 11-40 | 63.8% | 291 |
Ультра (12 мб) | 129871 | 12-47 | 63.7% | 266 |
Ультра (24 мб) | - | - | - | - |
Ультра (Deflate) | 141171 | 3-15 | 69.2% | 1046 |
Ультра (PPMd) | 140171 | 8-45 | 68.7% | 389 |
Ультра (Bzip2) | 135342 | 7-32 | 66.4% | 451 |
Примечание:
Для формата 7z архиватор позволяет устанавливать:
- Уровень (Быстрый, Нормальный, Максимальный, Ультра),
- Метод (LZMA, PPMd, Bzip2, Deflate),
- Размер словаря (32кб - 192 мб),
- Размер слова (8 - 255).
Как видим, возможно очень большое число комбинаций настройки режима работы архиватора, что может сбить пользователя с толку. Можно руководствоваться следующими посылками:
- Чем больше размер словаря, тем больше сжатие и время упаковки. Сжатие возрастает медленно, а время упаковки - вырастает очень сильно.
- То же самое - в отношении размера слова.
- Оптимальные настройки устанавливаются сами (настройки по умолчанию), и без надобности их можно не сбивать.
Результаты тестирования формата CAB
Режим | Размер, Кбайт | Время, мин.-сек. | Сжатие | Скорость, Кбайт/с |
---|---|---|---|---|
Без сжатия | 208893 | - | - | - |
|
||||
PowerArchiver | |
|||
Medium | 140444 | 9-55 | 67.2% | 351 |
Maximum | 137152 | 15-55 | 65.6% | 219 |
|
||||
WinAce | |
|||
Норма | 144374 | 3-24 | 69.1% | 1024 |
Максимум | 138538 | 12-54 | 66.3% | 270 |
Формат CAB (cabinet file) основан на алгоритмах MS-Zip и LZX, поддерживается и применяется фирмой Microsoft. Распаковщики формата имеются в Windows 98 и выше. Алгоритм имеет открытый код и может свободно применяться всеми программистами.
Результаты тестирования форматов BH и LHA
Режим | Размер, Кбайт | Время, мин.-сек. | Сжатие | Скорость, Кбайт/с |
---|---|---|---|---|
Без сжатия | 208893 | - | - | - |
|
||||
PowerArchiver, формат LHA | |
|||
Norma | 147518 | 4-40 | 70.6% | 746 |
Maximum | 147518 | 4-47 | 70.6% | 728 |
|
||||
PowerArchiver, формат BH | |
|||
Norma | 145912 | 2-16 | 69.8% | 1536 |
Maximum | 145718 | 2-34 | 69.8% | 1356 |
Показатели архивных форматов LHA и BH имеют уровень показателей архивного формата ZIP, и каких-то преимуществ не просматривается.
В общем, как видно, наилучшие показатели сжатия обеспечиваются форматами ACE и 7Z. Лучшие показатели быстродействия - показали форматы ZIP и BH. Дальнейшие испытания планируется провести по такой же принципиальной схеме, но с "корзинами" однородного состава, с форматами файлов: TXT, HTML, DOC, JPG, MP3, PDF.
Определение сжимаемости файлов разных форматов
Для обеспечения этой серии испытаний были составлены совершенно однородные по форматам файлов наборы, причем, повторяющиеся файлы в наборе исключались. Файлы EXE и DLL брались из системной папки Windows без всякого отбора. Дело в том, что файлы формата EXE бывают уже сжатыми и дальнейшее их сжатие - не имеет смысла. Характеристики наборов приводятся в следующей таблице:Форматы файлов в наборах для испытаний
Формат | Кол-во папок | Кол-во файлов | Суммарный размер, Кбайт |
---|---|---|---|
TXT | 0 | 27 | 35096 |
HTM | 7 | 1371 | 25076 |
DOC | 1 | 33 | 37211 |
0 | 1 | 33691 |
|
JPG | 26 | 430 | 40493 |
MP3 | 2 | 11 | 37571 |
EXE | 0 | 316 | 32446 |
DLL | 0 | 184 | 40323 |
XLS | 6 | 15 | 17228 |
CHM | 0 | 69 | 33940 |
MPEG | 0 | 24 | 46606 |
WAV | 0 | 1 | 30804 |
BMP | 0 | 15 | 31713 |
AVI | 0 | 89 | 9261 |
При испытаниях использовался только нормальный (обычный) режим работы архиватора. При этом, каждый формат архива создавался собственным архиватором (WinZip, WinRar, WinAce, 7-Zip), для упаковки в формат CAB использовался Power Archiver, который своего (фирменного) формата не имеет.
Сжимаемость файлов в зависимости от формата архива
Формат | ZIP | RAR | ACE | 7Z | CAB |
---|---|---|---|---|---|
TXT | 43.7% | 37.8% | 37.4% | 34.3% | 36.3% |
HTM | 29.2% | 28.3% | 9.09% | 7.75% | 15.0% |
DOC | 8.76% | 6.39% | 5.47% | 5.21% | 6.49% |
97.7% | 97.4% | 97.8% | 97.5% | 97.3% |
|
JPG | 98.5% | 98.5% | 85.0% | 85.1% | 97.9% |
MP3 | 98.1% | 97.9% | 98.1% | 97.9% | 97.7% |
EXE | 46.9% | 42.1% | 37.8% | 32.7% | 39.3% |
DLL | 45.6% | 39.6% | 37.6% | 34.3% | 39.6% |
XLS | 11.8% | 8.27% | 7.44% | 5.97% | 8.49% |
CHM | 98.6% | 98.8% | 99.0% | 99.6% | 98.6% |
MPEG | 95.3% | 94.7% | 94.8% | 94.5% | 94.4% |
AVI | 86.1% | 84.1% | 84.5% | 82.7% | 83.4% |
WAV | 92.2% | 62.8% | 62.6% | 87.0% | 92.1% |
BMP | 63.5% | 31.9% | 30.6% | 51.5% | 56.2% |
|
|||||
Средний показатель | 65.5% | 59.2% | 56.2% | 58.3% | 61.6% |
В качестве комментария к таблице можно отметить следующее:
- Наилучшее сжатие по основным форматам исходных файлов обеспечивается архивным форматом 7z.
- Лучший показатель в среднем имеет архивный формат ACE за счет рекордного сжатия форматов WAV и BMP.
Если говорить о сжимаемости исходных файлов, то можно отметить следующее: показатель сжатия зависит от исходного формата файлов, иногда подразумевающего внутреннее сжатие данных. Если файл предварительно уплотнен по своим алгоритмам, то сжимаемость его архиватором - небольшая. Например, файл формата CHM является уплотненным вариантом файла формата HTML и, соответственно, сжимаемость их - разная. То же мы видим в отношении Wav и MP3, BMP и JPG и так далее.
Скорость работы архиватора, Кбайт/с
Формат | ZIP | RAR | ACE | 7Z | CAB |
---|---|---|---|---|---|
TXT | 2064 | 408 | 386 | 217 | 226 |
HTM | 2507 | 836 | 627 | 643 | 411 |
DOC | 7400 | 2862 | 1550 | 1378 | 886 |
2246 | 293 | 370 | 387 | 370 |
|
JPG | 2670 | 587 | 337 | 368 | 287 |
MP3 | 2348 | 458 | 368 | 335 | 332 |
EXE | 2318 | 773 | 601 | 416 | 433 |
DLL | 2016 | 858 | 672 | 474 | 434 |
XLS | 4300 | 1436 | 1148 | 507 | 224 |
CHM | 1886 | 556 | 365 | 357 | 323 |
MPEG | 2453 | 583 | 416 | 370 | 338 |
AVI | 1852 | 617 | 463 | 370 | 356 |
WAV | 2370 | 1711 | 1184 | 354 | 288 |
BMP | 2883 | 1269 | 933 | 401 | 373 |
|
|||||
Средний показатель | 2838 | 856 | 609 | 485 | 385 |
Эта таблица демонстрирует очевидное правило - за лучшее сжатие почти всегда необходимо платить скоростью упаковки.
Сжимаемость разных форматов файлов. Дополнение
Формат | ZIP | RAR | ACE | 7Z |
---|---|---|---|---|
VXD | 55.1% | 52.5% | 43.3% | 40.8% |
INF | 14.9% | 13.3% | 13.2% | 12.3% |
VBP | 78.3% | 72.6% | 26.0% | 18.5% |
GIF | 90.0% | 94.3% | 87.2% | 86.1% |
SCR | 88.8% | 88.0% | 88.1% | 87.9% |
DAT | 23.1% | 20.1% | 20.5% | 18.0% |
INI | 35.6% | 33.2% | 32.5% | 30.2% |
|
||||
Средний показатель | 55.1% | 53.4% | 44.4% | 42.0% |
Эта таблица содержит дополнительные данные по сжимаемости файловых форматов. Здесь тестирование проводилось без фиксации времени на наборах небольшого объема (100-200 кб). Как видно, по всем форматам наилучшее сжатие дает архивный формат 7z.
Далее, в качестве примера приведу результаты упаковки реального дистрибутива программы Norton Antivirus. Упаковка выполнялась в нормальном режиме, дополнительно получены самораспаковывающиеся варианты этих же архивов. Результат этого испытания приведен в следующей таблице (последняя колонка - примерное время загрузки упакованного дистрибутива по сети при обычном модемном соединении при скорости 2.7 Кбайт в секунду):
Формат архива | Размер, Кбайт | Время | Сжатие | Время загрузки, час.-мин. |
---|---|---|---|---|
Без сжатия | 47410 | - | - | 4-53 |
ZIP | 29045 | 0-21 | 61.3% | 2-59 |
RAR | 26619 | 1-15 | 56.1% | 2-44 |
ACE | 23838 | 1-30 | 50.3% | 2-27 |
7Z | 22871 | 1-50 | 48.2% | 2-21 |
CAB | 26804 | 2-22 | 56.5% | 2-45 |
EXE (RAR) | 26671 | 1-15 | 56.3% | 2-45 |
EXE (ACE) | 23903 | 1-30 | 50.4% | 2-28 |
EXE (7Z) | 22941 | 1-52 | 48.4% | 2-22 |
Результаты таблицы наглядно демонстрируют, что:
При передачи файлов по сети - упаковка практически обязательна.
Упаковка с хорошим сжатием может сократить время передачи файла, в нашем случае - на полчаса.
Применение перспективных форматов ACE и 7Z вполне оправдано уже сейчас в виде самораспаковывающихся архивов. Это обстоятельство желательно учитывать распространителям программной продукции по сети Интернет.
Архиватор 7-ZIP является хорошей программой с высокой степенью сжатия и обладает необходимым минимумом пользовательских удобств. Можно, в частности, удалять и просматривать отдельные файлы без общей распаковки архива. При этом, файлы открываются ассоциативными приложениями системы. Можно дополнять архив отдельными файлами.
Заключение
Программы-архиваторы остаются незаменимым средством упаковки и сжатия цифровой информации. Обработанная информация существенно экономит место на хранителях и время передачи по каналам связи в сети. Наиболее популярными и применяемыми являются сейчас форматы упаковки ZIP и RAR. Другие форматы, например, ARJ, ICE, PAC, ARC и некоторые еще - постепенно вытеснились и подзабылись. Но технология упаковки не стоит на месте. Архиваторы - востребованы, поэтому программисты непрерывно ведут поиск более эффективных методов сжатия. Об этом свидетельствуют и результаты нашего эксперимента. Реально существуют, по крайней мере, два архивных формата (ACE и 7z), которые по сжатию существенно превосходят привычные ZIP и RAR. Применение этих форматов позволит заметно сократить время передачи файлов по сети Интернет, что соответствует интересам многочисленных пользователей...Дополнение от 24 мая 2004 г.
В этом разделе мы рассмотрим влияние опции Solid на показатели работы архиваторов. Напомним, что упаковка с опцией Solid приводит к тому, что в архив нельзя добавить файл и нельзя из него извлечь отдельный файл, архив упаковывается и распаковывается только целиком. В общем случае это может вызывать определенные неудобства при использовании таких архивов. Но иногда такие неудобства могут иметь второстепенное значение в сравнении с преимуществами.Дополнительное тестирование проделано в точности так, как это описано в основном разделе на тех же самых наборах материала. С учетом дополнительного тестирования таблица "Результаты тестирования формата RAR" основного текста стала выглядеть так...
Результаты тестирования формата RAR
Режим | Размер, Кбайт | Время, мин.-сек. | Сжатие | Скорость, Кбайт/с |
---|---|---|---|---|
Без сжатия | 208893 | - | - | - |
Store | 209129 | 0-58 | 100.1% | 3601 |
Fastest | 144017 | 6-00 | 68.9% | 580 |
Fast | 143281 | 6-22 | 68.6% | 547 |
Normal | 142830 | 6-40 | 68.4% | 522 |
Normal (Solid) | 131664 | 9-14 | 63.0% | 377 |
Good | 139826 | 6-58 | 66.9% | 499 |
Good (Solid) | 129314 | 8-24 | 61.9% | 414 |
Best | 140023 | 7-25 | 67.0% | 469 |
Best (Solid) | 129527 | 8-36 | 62.0% | 405 |
Best (64kb) | 140685 | 5-40 | 67.3% | 614 |
Настройка архиватора WinRar включает в себя:
1. Выбор способа сжатия (Normal, Store, Fastest, Fast, Good, Best).
2. Выбор модификации:
- Add and replace files,
- Add and update files,
- Fresh existing files only,
- Syncronize axchive contents.
3. Выбор опции:
- Deleting files after archiving,
- Create SFX archive,
- Create solid archive,
- Put autohenlicity verification,
- Put recovery record,
- Test archived files,
- Lock archive.
Нетрудно заметить, что возможно более сотни комбинаций настроек, определяющих режим работы архиватора. Соответственно и диапазон результатов для этого формата и этого архиватора получился достаточно большим - степень сжатия: 61.9 - 68.9%, скорость: 377 - 614 Кбайт/сек.
Опцию Solid имеет также архиватор WinAce. Но в этом архиваторе опция (Make solid archive) включена постоянно (по умолчанию) и поэтому вошла в результаты тестирования. Таким образом, несправедливость была допущена только для формата RAR и архиватора WinRar.
С учетом новых обстоятельств таблица лидеров по степени сжатия выглядит так:
1. RAR (Good, Solid) - 61.9%.
2. 7-Zip (Максимум) - 62.2%.
3. ACE (Good) - 63.6%.
Дополненная таблица результатов упаковки реального дистрибутива программы Norton Antivirus ("Пример упаковки дистрибутива Norton Antivirus") стала выглядеть так...
Пример упаковки дистрибутива Norton Antivirus
Формат архива | Размер, Кбайт | Время | Сжатие | Время загрузки, час.-мин. |
---|---|---|---|---|
Без сжатия | 47410 | - | - | 4-53 |
ZIP | 29045 | 0-21 | 61.3% | 2-59 |
RAR | 26619 | 1-15 | 56.1% | 2-44 |
RAR (Normal, Solid) | 22745 | 1-21 | 48.0% | 2-20 |
RAR (Good, Solid) | 22680 | 1-28 | 47.8% | 2-20 |
ACE | 23838 | 1-30 | 50.3% | 2-27 |
7Z | 22871 | 1-50 | 48.2% | 2-21 |
CAB | 26804 | 2-22 | 56.5% | 2-45 |
EXE (RAR) | 26671 | 1-15 | 56.3% | 2-45 |
EXE (RAR, Normal, Solid) | 22797 | 1-29 | 48.1% | 2-21 |
EXE (ACE) | 23903 | 1-30 | 50.4% | 2-28 |
EXE (7Z) | 22941 | 1-52 | 48.4% | 2-22 |
Результаты этой таблицы также подтверждают, что архиватор WinRar может обеспечить максимальное сжатие, и по этому показателю является лидером. В сравнении с форматом ZIP загрузка этого же дистрибутива в формате RAR может осуществлена на 39 минут короче...
В таблице с результатами тестирования формата 7z наш читатель Александр Рыхлов обнаружил ошибку в расчете показателя сжатия. Александру большое спасибо, а исправленная таблица "Результаты тестирования формата 7z" стала выглядеть так...
Примечание: в режиме Ультра (LZMA) при задании размера Словаря в 24 мегабайт скорость снизилась настолько, что проведение теста стало невозможным.
Заключение
Назревавшая было сенсация о том, что архиватор WinRar не настолько хорош, как это считают многие пользователи, не состоялась. Наше тестирование подтвердило, что технические характеристики этого архиватора действительно на сегодняшний день самые высокие. Очень близкие показатели имеет архиватор 7-Zip, но по степени отработки и ползовательским качествам последний пока несколько уступает лидеру. Для получения максимального сжатия в архиваторе WinRar необходимо включать опцию Solid (по умолчанию она отключена), другие настройки (Normal, Good и т.д.) - имеют меньшее значение.
Общие сведения об архивации файлов
Понятие процесса архивации файлов Одним из наиболее широко распространенных видов сервисных программ являются программы-архиваторы , предназначенные для архивации, упаковки файлов путем сжатия хранимой в них информации. Сжатие информации - это процесс преобразования информации, хранящейся в файле, к виду, при котором уменьшается избыточность в ее представлении и соответственно требуется меньший объем памяти для хранения.Сжатие информации в файлах производится за счет устранения избыточности различными способами, например за счет упрощения кодов, исключения из них постоянных битов или представления повторяющихся символов или повторяющейся последовательности символов в виде коэффициента повторения и соответствующих символов. Применяются различные алгоритмы подобного сжатия информации.Сжиматься могут как один, так и несколько файлов, которые в сжатом виде помещаются в так называемый архивный файл или архив. Архивный файл - это специальным образом организованный файл, содержащий в себе один или несколько файлов в сжатом или несжатом виде и служебную информацию об именах файлов, дате и времени их создания или модификации, размерах и т.п.Целью упаковки файлов обычно являются обеспечение более компактного размещения информации на диске, сокращение времени и соответственно стоимости передачи информации по каналам связи в компьютерных сетях. Кроме того, упаковка в один архивный файл группы файлов существенно упрощает их перенос с одного компьютера на другой, сокращает время копирования файлов на диски, позволяет защитить информацию от несанкционированного доступа, способствует защите от заражения компьютерными вирусами.Степень сжатия файлов характеризуется коэффициентом Кс, определяемым как отношение объема сжатого файла Vc к объему исходного файла Vо, выраженное в процентах: Кс= (Vc/Vo)*100% Степень сжатия зависит от используемой программы, метода сжатия и типа исходного файла. Наиболее хорошо сжимаются файлы графических образов, текстовые файлы и файлы данных, для которых степень сжатия может достигать 5 - 40%, меньше сжимаются файлы исполняемых программ и загрузочных модулей - 60 - 90%. Почти не сжимаются архивные файлы. Программы для архивации отличаются используемыми методами сжатия, что соответственно влияет на степень сжатия. Архивация(упаковка) - помещение (загрузка) исходных файлов в архивный файл в сжатом или несжатом виде. Разархивация (распаковка) - процесс восстановления файлов из архива точно в таком виде, какой они имели до загрузки в архив. При распаковке файлы извлекаются из архива и помещаются на диск или в оперативную память; Программы, осуществляющие упаковку и распаковку файлов, называются программами - архиваторамии Большие по объему архивные файлы могут быть размещены на нескольких дисках (томах). Такие архивы называются многотомными. Том - это составная часть многотомного архива. Создавая архив из нескольких частей, можно записать его части на несколько дискет. Основные виды программ-архиваторов В настоящее время применяется несколько десятков программ - архиваторов, которые отличаются перечнем функций и параметрами работы, однако лучшие из них имеют примерно одинаковые характеристики. Из числа наиболее популярных программ можно выделить:ARJ , PKPAK, LHA, ICE, HYPER, ZIP, РАК, ZOO, EXPAND, разработанные за рубежом, а также AIN и RAR , разработанные в России. Обычно упаковка и распаковка файлов выполняются одной и той же программой, но в некоторых случаях это осуществляется разными программами, например, программа РКZIР производит упаковку файлов, a PKUNZIP - распаковку файлов.Программы - архиваторы позволяют создавать и такие архивы, для извлечения из которых содержащихся в них файлов не требуются какие - либо программы, так как сами архивные файлы могут содержать программу распаковки. Такие архивные файлы называются самораспаковывающимися. Самораспаковывающийся архивный файл - это загрузочный, исполняемый модуль, который способен к самостоятельной разархивации находящихся в нем файлов без использования программы - архиватора.Самораспаковывающийся архив получил название SFX - архив (SelF - eXtracting). Архивы такого типа в MS DOS обычно создаются в форме.ЕХЕ - файла.Многие программы - архиваторы производят распаковку файлов, выгружая их на диск, но имеются и такие, которые предназначены для создания упакованного исполняемого модуля (программы). В результате такой упаковки создается программный файл с теми же именем и расширением, который при загрузке в оперативную память самораспаковывается и сразу запускается. Вместе с тем возможно и обратное преобразование программного файла в распакованный формат. К числу таких архиваторов относятся программы PKLITE, LZEXE, UNP.Программа EXPAND, входящая в состав утилит операционной системы MS DOS и оболочки Windows, применяется для распаковки файлов программных продуктов, поставляемых фирмой Microsoft.Программы - архиваторы RAR и AIN, кроме обычного режима сжатия, имеют режим solid, в котором создаются архивы с повышенной степенью сжатия и особой структурой организации. В таких архивах все файлы сжимаются как один поток данных, т.е. областью поиска повторяющихся последовательностей символов является вся совокупность файлов, загруженных в архив, и поэтому распаковка каждого файла, если он не первый, связана с обработкой других. Архивы такого типа предпочтительнее использовать для архивирования большого числа однотипных файлов.Способы управления программой - архиватором Управление программой - архиватором осуществляется одним из двух способов:- с помощью командной строки MS DOS, в которой формируется команда запуска, содержащая имя программы - архиватора, команду управления и ключи ее настройки, а также имена архивного и исходного файлов; подобное управление характерно для архиваторов ARJ, AIN, ZIP, РАК, LHA и др.;
- с помощью встроенной оболочки и диалоговых панелей, появляющихся после запуска программы и позволяющих вести управление с использованием меню и функциональных клавиш, что создает для пользователя более комфортные условия работы. Такое управление имеет программа - архиватор RAR.
- создавать архивные файлы из отдельных или всех файлов текущего каталога и его подкаталогов, загружая в один архив до 32000 файлов;
- добавлять и заменять файлы в архиве;
- извлекать и удалять файлы из архива;
- защищать каждый из помещенных в архив файлов 32-битовым циклическим кодом, тестировать архив , проверяя сохранность в нем информации;
- получать помощь по работе на 3 международных языках;
- вводить в архив комментарии к файлам;
- запоминать в архиве пути к файлам;
- сохранять в архиве несколько поколений (версий) одного и того же файла;
- переупорядочивать архивный файл по размерам файлов, именам, расширениям, дате и времени модификации, коэффициенту сжатия и др.;
- осуществлять поиск строк в архивированных файлах;
- восстанавливать файлы из разрушенных архивов;
- создавать самораспаковывающиеся архивы как на одном томе, так и на нескольких томах;
- просматривать содержимое текстовых файлов, содержащихся в архиве;
- обеспечивать защиту информации в архиве и доступ к файлам, помещенным в архив, по паролю.
Номер группы |
Группа команд |
Команда |
Функция архивации |
Помещение в архив |
добавить файлы в архив |
||
заменить файлы в архиве на новые версии |
|||
добавить в архив только новые файлы |
|||
переместить файлы в архив |
|||
Извлечение из архива |
извлечь файлы из архива в текущий каталог |
||
извлечь файлы из архива и поместить в каталоги в соответсвии с указанными к ним путями доступа |
|||
Удаление из архива |
удалить файлы из архива |
||
Сервисные функции |
полное тестирование архива |
||
вывод содержимого архива без указания пути к файлам |
|||
вывод содержимого архива с указанием пути к файлам |
|||
копировать архив с новыми параметрами |
|||
найти текстовую строку в архиве |
Назначение |
|
Добавление файлов из текущего каталога и всех вложенных в него подкаталогов с указанием пути к файлам | |
Создание многотомного архивного файла | |
Защита создаваемого архива паролем: g<пароль> - пароль вводится в командной строке g? - ввод невидимого пароля при выполнении |
|
Добавление/замена файлов, за исключением файлов, имена которых указаны вслед за ключом | |
Запрос на выполнение операции для каждого файла: для подтверждения необходимо ввести символ "Y" для отказа - символ "N" |
|
Создание самораспаковывающегося архива | |
Указание метода архивации: m0 - без сжатия; m1 - нормальное сжатие (по умолчанию); m2 - наибольшая компрессия; m3 - быстрое сжатие и меньшая компрессия; m4 - самое быстрое сжатие и наименьшая компрессия; |
|
Предпологается ответ "Yes" на все вопросы архиватора | |
Пауза при просмотре содеожимого архива после заполнения экрана |
Модификатор |
Назначение модификатора |
Указывает что архивные файлы многотомного архива займут все свободное местона дисках (томах) | |
Позвляет выпонить перед созданием нового тома любое количество команд DOS, например просмотр, очистку или форматирование дискеты, на которую предстоит запись следующего архивного файла; после выплнения команд необходимо ввести команду EXIT для продолжения архивации | |
Запрещает делить архивируемые файлы между томами | |
Предусматривает подачу звукового сигнала перед установкой следующего тома | |
Позволяет зарезервировать свободное пространство на первом томе; число, записанное вслед за символом r, указывает на размер этого пространства | |
360, 720, 1200 |
Варианты модификаторов для указания размеров тома архива |
- возможность работы в двух режимах - полноэкранного интерактивного интерфейса и обычного интерфейса командной строки;
- поддержка других типов архивов; в полноэкранном режиме RAR предоставляет возможность работы с архивами других типов (.ZIP, .ARJ,LZH), просмотра их содержимого, изменения и преобразования;
- использование высокоэффективного метода сжатия solid для получения высокой степени сжатия (на 10 - 50% выше, чем обычно);
- возможность создания самораспаковывающихся и многотомных архивов;
- защита архивов паролем.
- шифрование с паролем;
- добавление файловых и архивных комментариев;
- возможность частичного или полного восстановленияповрежденных архивов;
- защита архива от изменений;
- возможность добавления в архив информации о создателе архива, времени и дате последних изменений, внесенных в архив.
- в режиме командной строки;
- в режиме полноэкранного интерфейса.
Наименование функции |
Назначение |
|
Добавить файл в архив, если архив не существует он будет создан | ||
Просмотреть файл | ||
Обновить файлы в архиве - добавляются только измененные файлы,старые копии которых имеются в архиве | ||
Создать архивные тома | ||
Перенести файлы в архив | ||
Добавить файлы, которых нет в архиве, и обновить те, старые копии которых уже имеются в архиве | ||
Восстановить испорченный архив | ||
Выход из RAR. Клавиша |
||
Создать непрерывный (solid) архив | ||
Просмотреть файл | ||
Создать архив, разбитый на SFX-тома | ||
Создать solid - архив, разбитый на тома | ||
Создать solid - архив, разбитый на SFX-тома |
Наименование функции |
Назначение |
|
Вывод на экран справочной информации | ||
Тестировать архив | ||
Просмотреть файл | ||
Извлеч файл из архива с полными путями | ||
Добавить коментарий к архиву | ||
Извлечь файлы в текущий каталог | ||
Преобразовать в SFX - архив | ||
Удалить файлы из архива | ||
Конфигурация/Сохранение конфигурации | ||
Выход из архива | ||
Просмотреть файл встроенной программой при наличии внешней | ||
Извлечь файлы в указанный каталог | ||
Добавить комментарии к файлам | ||
Заблокировать архив от изменений |
Work directory Сжатие информации - это процесс преобразования информации, хранящейся в файле, к виду, при котором уменьшается избыточность в ее представлении и, соответственно, требуется меньший объем памяти для хранения.
Сжатие информации в файлах производится за счет устра
нения избыточности различными способами,
например, за счет упрощения кодов, исключения из них постоянных битов символов или повторяющейся последовательности символов, введения коэффициента повторения символов и т. п. Применяются различные алгоритмы подобного сжатия информации.
Сжиматься могут как один, так и несколько файлов, которые в сжатом виде помещаются в архивный файл или архив.
Архивный файл
(архив, или файл-архив) - это специальным
образом организованный файл, содержащий в себе один или не
сколько файлов в сжатом или несжатом виде и служебную инфор
мацию об именах файлов , дате и времени их создания или модифи
кации, размерах и т. п.
Целью упаковки файлов
обычно являются обеспечение более компактного размещения информации на диске, сокращение времени и, соответственно, стоимости передачи информации по каналам связи в компьютерных сетях. Кроме того, упаковка в один ар
хивный файл группы файлов
существенно упрощает их перенос с одного компьютера на другой, сокращает время копирования файлов на диски, позволяет защитить информацию от несанкционированного доступа, способствует защите от заражения компьютерными вирусами.
Степень сжатия зависит от используемой программы-архиватора, метода сжатия и типа исходного файла. Наиболее хорошо сжимаются текстовые файлы и файлы данных, для которых степень сжатия может достигать 80-90%, меньше сжимаются файлы исполняемых программ и загрузочных модулей - 5-40%. Почти не сжимаются архивные файлы. Программы архивации отличаются используемыми методами сжатия, что соответственно влияет на степень сжатия.
Разархивация
(распаковка)
- процесс восстановления файлов
из архива точно в таком виде, какой они имели до загрузки в ар
хив.
При распаковке файлы извлекаются из архива и помещаются на диск или в оперативную память.
Большие по объему архивные файлы могут быть размещены в нескольких томах. Такие архивы называются многотомными.
Том
- это составная часть многотомного архива.
Создавая архив из нескольких частей, можно записать его части на несколько дискет. Сжатие информации — это процесс преобразования информации, хранящейся в файле, к виду, при котором уменьшается избыточность в ее пред-ставлении и соответственно требуется меньший объем памяти для хранения. Сжатие информации в файлах производится за счет устранения избыточности различными способами, например за счет упрощения кодов или представления повторяющихся символов, или повторяющейся последовательности символов в виде коэффициента повторения и соответствующих символов. Применяются различные алгоритмы подобного сжатия информации. Сжиматься могут как один, так и несколько файлов, которые в сжатом виде помещаются в так называемый архивный файл или архив. Архивный файл — это специальным образом организованный файл, содержащий в себе один или несколько файлов в сжатом или несжатом виде и служебную информацию об именах файлов, дате и времени их создания или модификации, размерах и т.п. Целью упаковки файлов обычно являются обеспечение более компактного размещения информации на диске, сокращение времени и соответственно стоимости передачи информации по каналам связи в компьютерных сетях. Кроме того, упаковка в один архивный файл группы файлов существенно упрощает их перенос с одного компьютера на другой, сокращает время копирования файлов на диски, позволяет защитить информацию от несанкционированного доступа, способствует защите от заражения компьютерными вирусами. Степень сжатия файлов характеризуется коэффициентом Кс, определяемым как отношение объема сжатого файла Vc к объему исходного файла Vо, выраженное в процентах: Kc=(Vc/ V0)*100% Степень сжатия зависит от используемой программы, метода сжатия и типа исходного файла. Наиболее хорошо сжимаются файлы графических образов, текстовые файлы и файлы данных, для которых степень сжатия может достигать 5 - 40%, меньше сжимаются файлы исполняемых программ и загрузочных модулей — 60 - 90%. Почти не сжимаются архивные файлы. Программы для архивации отличаются используемыми методами сжатия, что соответственно влияет на степень сжатия. Архивация (упаковка) — помещение (загрузка) исходных файлов в архивный файл в сжатом или несжатом виде. Разархивация (распаковка) — процесс восстановления файлов из архива точно в таком виде, какой они имели до загрузки в архив. При распаковке файлы извлекаются из архива и помешаются на диск или в оперативную память. Программы, осуществляющие упаковку и распаковку файлов, называются про-граммами-архиваторами. Большие по объему архивные файлы могут быть размещены на нескольких дисках (томах). Такие архивы называются многотомными. Том — это составная часть многотом-ного архива. Создавая архив из нескольких частей, можно записать его части на несколько частей. Наиболее популярные форматы архивов Gif" width="25" height="25" />.php?viewcat=4">Обсудить на форумеПервый пункт меню Configuration
позволяет вызвать диалоговое окно конфигурации
для настройки основных параметров RAR (рис. 11.3). Окно содержит пять групп
параметров:
Interface options -настройка интерфейса;
Sort names - настройка варианта сортировки файлов;
Include file mask- настройка маски включения файлов;
Compression - насгройка метода сжатия;
Other options - настройка других параметров.Рис. 11.3. Вид окна настройки параметров конфигурации архиватора RARПараметр, помеченный крестиком, означает разрешение соответствующей функции.
Переход от одного параметра к другому осуществляется нажатием клавиш
со стрелками. Для смены значения параметра в текущем поле нужно нажать
.Технология работы с архиватором
Рассмотрим последовательность действий при выполнении наиболее часто выполняемых
процедур архивации после загрузки программы RAR для работы в полноэкранном режиме.Создание нового архива из нескольких файлов
1.Выбрать диск, нажав комбинацию клавиш .
Программы-архиваторы предназначены для архивации, (упаковки) файлов путем сжатия хранимой в них информации, в целях экономии места на дисках.
ОСНОВНЫЕ ВИДЫ ПРОГРАММ-АРХИВАТОРОВ.
Одним из наиболее широко распространенных видов сервисных программ являются программы, предназначенные для архивации, упаковки файлов путем сжатия хранимой в них информации.
ZIP - еще со времен DOS-a один из самых популярных и распространенных архивных форматов, основанный на алгоритмах сжатия предложенных в 80-х годах прошлого столетия израильскими математиками Лемпелем и Зивом. Он отличается приемлемой степенью сжатия информации и достаточно высоким быстродействием. Сегодня он является стандартом де-факто в интернете, и его в обязательном порядке поддерживают практически все программы-архиваторы.
RAR - разработан российским программистом Евгением Рошалем и позволяет получить размер сжатого файла гораздо меньший, чем ZIP, но ценой этому является более продолжительный процесс обработки архива. В целом формат RAR значительно лучше других оптимизирован для решения сложных задач с использованием большого количества файлов и гигабайтных дисковых пространств.
ARJ - несколько устаревший формат, до сих пор отличающийся, наверное, наиболее широкими возможностями по настройке.
CAB - применяется в продуктах Microsoft как стандартный для упаковки файлов, причем его алгоритм, нигде не опубликованный и хранимый фирмой за семью печатями, представляет собой достаточно совершенный продукт, имеющий высокий коэффициент сжатия.
GZIP, TAR - получили наибольшее распространение в системах на базе Unix и ее самой популярной разновидности Linux.
ACE - достаточно новый формат с высокой степенью сжатия, завоевывающий все большую популярность.
Многие программы, являющиеся достаточно популярными в мире архиваторов базируются на том или ином формате и носят аналогичные названия. Например, для ОС Windows наиболее популярными являются архиваторы WinRAR, WinZIP, WinACE. Кроме этого все они имеют инструменты для работы с другими форматами архивов. Несмотря на это, могут возникнуть проблемы с совместимостью форматов архивов в различных программах. Во многих случаях удачным решением проблемы совместимости архивов различных типов является создание архивов в виде самораспаковывающихся программ (EXE-файлов), в состав которых входят все необходимые механизмы для извлечения информации из архива, таким образом, отпадает необходимость иметь на компьютере соответствующую программу-распаковщик архива.