Архиваторы.

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

Для архивирования файлов используются специальные программы – архиваторы. Они уменьшают размеры файлов путем сжатия хранимой в них информации. Сжатие – это процесс преобразования информации, которая содержится в файле, к виду, при котором убирается все лишнее. Такими «лишними» данными в файлах могут быть повторяющиеся символы, постоянные биты и т. д. Соответственно и методы сжатия могут быть разными.

Степень сжатия информации зависит от нескольких причин.

Во-первых, большое значение имеет тип сжимаемых данных. Лучше всего сжимаются графические и текстовые файлы. Для них степень сжатия может быть от 5 до 40 %. Хуже сжимаются файлы исполняемых программ, загрузочных модулей и файлы мультимедиа.

Во-вторых, большое значение имеет метод сжатия.

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

На сегодняшний день наиболее распространенными являются три архиватора: WinRAR, WinAce и 7-Zip.

WinRAR

Производитель: RARLAB (http://www.rarlab.com).

Статус: коммерческая.

Страница для скачивания: http://www.rarlab.com/download.htm.

Размер: 1,3 Мбайт.

 

WinRAR может ассоциироваться со следующими типами файлов: RAR, ZIP, CAB, ARJ, LZH, ACE, 7-Zip, TAR, GZip, UUE, BZ2, JAR, ISO и Z. Программа поддерживает файлы практически неограниченного размера (до 8 589 934 591 Гбайт).

Внимание!

Для работы с файлами размером более 4 Гбайт вам необходимо использовать файловую систему NTFS.

При выборе оптимальных настроек для сжатия необходимо учитывать следующее.

• Несмотря на то что WinRAR поддерживает формат ZIP, в большинстве случаев рекомендуется выбирать формат RAR. Это обеспечит более высокий уровень сжатия. Вы можете использовать ZIP, если не уверены, что на другом компьютере установлена программа, с помощью которой можно будет распаковать файлы в формате RAR.

• Необходимо определить, какой метод компрессии лучше всего использовать. Чем выше степень сжатия, тем больше времени уйдет на архивацию, поэтому следует учитывать, для каких целей архивируются данные. Если это долгосрочное хранение, имеет смысл подождать и получить архив с максимальной степенью сжатия. Если же вам просто нужно отослать несколько документов по почте, то подойдет и обычная (Normal) степень сжатия.

Если необходимо достичь максимальной степени сжатия файлов, используйте команду Create solid archive (Создать непрерывный архив). Этот метод хорош, когда имеет большое значение размер полученных в результате сжатия данных, однако он имеет недостатки. Для распаковки таких файлов понадобится больше времени, чем для извлечения из обычного архива. Представьте себе, что в вашем архиве более 200 файлов. Если он создан обычным способом, вы без труда можете извлечь один из файлов. Если же вы использовали команду Create solid archive (Создать непрерывный архив), то будет иметь значение, каким по счету был заархивирован нужный вам файл. Если он был в середине второй сотни, то для его распаковки программе нужно будет распаковать 150 файлов, пока она доберется до него. Кроме того, создание архивов данным способом также может привести к утрате большого количества файлов, ведь если архив окажется поврежден, вы потеряете все файлы, которые в нем находились. При архивировании обычным способом вы сможете извлечь из поврежденного архива пусть не все, но большинство файлов.

На создание большого архива может уйти довольно много времени. WinRAR позволяет определить примерное количество времени, необходимое для выполнения того или иного задания. Для этого предназначена команда Benchmark and hardware test (Тест быстродействия и надежности аппаратуры) меню Tools (Операции). Еще одна причина, по которой можно использовать эту команду, – определение возможных ошибок, которые могут возникнуть при архивации из-за какого-то аппаратного сбоя.

Среди других настроек WinRAR можно отметить возможность создания самораспаковывающихся архивов с указанием пути распаковки. Такие файлы не требуют наличия программы-архиватора на компьютере, на котором их планируется разархивировать. Подобные архивы называются SFX-архивами. Их недостатком по сравнению с обычными является больший размер, так как они, кроме собственно запакованных файлов, содержат также исполняемый ЕХЕ-модуль.

Содержимое RAR-архива можно сделать невидимым. Для этого в окне Archiving with password (Ввод пароля по умолчанию) настроек программы нужно установить флажок Encrypt file names (Шифровать имена файлов) (рис. 2.1). При необходимости можно также задать пароль для открытия архива.

Рис. 2.1. Окно Archiving with password (Ввод пароля по умолчанию)

 

В результате ошибки передачи архива по локальной сети или скачивания его из Интернета, а также из-за аппаратного сбоя или вирусной атаки архив может быть поврежден. WinRAR позволяет определить целостность данных, протестировав архив с помощью команды Test archived files (Протестировать файлы в архиве) меню Commands (Команды) или контекстного меню.

При создании архивов WinRAR рекомендуется использовать параметр Put recovery record (Добавить информацию для восстановления) (данный флажок находится в области Archiving options (Параметры архивации) вкладки General (Общие) окна создания архива) (рис. 2.2). Если это было сделано, то в случае повреждения архива его можно будет восстановить.

Рис. 2.2. Окно создания нового архива программы WinRAR

 

Для восстановления поврежденных RAR-архивов следует выбрать нужный файл в окне WinRAR и выполнить команду Tools ? Repair (Операции ? Восстановить архив(ы)).

WinRAR может встраиваться в контекстное меню, причем поддерживает меню не только Проводника, но и других программ, например популярного файлового менеджера Total Commander (см. выше). Это дает возможность быстро архивировать файлы, используя настройки по умолчанию и не открывая для этого окно программы. Настройки по умолчанию можно изменить в соответствии с требованиями, которые вы предъявляете к архивам. Это можно сделать, открыв окно WinRAR (рис. 2.3) и выполнив команду Options ? Settings (Параметры ? Установки). В этом окне нужно перейти на вкладку Compression (Архивация) и нажать кнопку Create Default (Создать по умолчанию). Настройки, заданные в этом окне, и будут использоваться для быстрой архивации.

Рис. 2.3. Окно программы WinRAR

 

Настройки архивации можно также изменить при помощи контекстного меню. Для этого нужно выбрать команду Add to Archive (Добавить в архив). В открывшемся окне (см. рис. 2.2) можно установить формат и степень сжатия, указать имя архива и выбрать другие параметры архивации.

WinRAR позволяет сохранять установленные пользователем настройки в файл с расширением REG. Данный файл при необходимости можно импортировать в программу, чтобы повторно использовать заданную конфигурацию. В этом файле хранится такая информация, как история архивов, которые недавно создавались, параметры сжатия по умолчанию и пр.

Еще одна удобная функция WinRAR – возможность создания собственных закладок (Favorities). Очень часто необходимо производить регулярное архивирование одних и тех же папок на жестком диске. Добавив на закладки информацию о месторасположении этих папок, можно быстро переходить в них в окне программы и архивировать необходимые файлы и вложенные директории.

7-Zip

Производитель: Igor Pavlov (http://www.7-zip.org).

Статус: бесплатная.

Страница для скачивания: http://www.7-zip.org/download.html.

Размер: 820 Кбайт.

 

Если программа хорошая, то рано или поздно она обязательно станет популярной. Это утверждение можно отнести и к архиватору 7-Zip. Данное приложение появилось не так давно, но уже успело завоевать симпатии многих тысяч пользователей. При этом можно с уверенностью сказать, что бесплатный статус программы – это, конечно, весомая, но не единственная причина растущей популярности архиватора.

7-Zip действительно во многом превосходит более известных конкурентов, а потому предпочтение ему отдают все больше пользователей. Чуть ли не единственный недостаток архиватора связан с тем, что фирменный формат сжатия пока еще недостаточно распространен, а потому при пересылке файлов с расширением 7z по электронной почте или при передаче их другими способами у получателей могут возникнуть проблемы с распаковкой. Впрочем, с распространением архиватора эта проблема будет решена. Последние версии WinRAR уже позволяют распаковывать файлы в формате 7z.

Программа поддерживает очень большое количество языков – в последней версии программы их более 40 (даже официальный сайт программы имеет более 10 локализированных версий). Конечно же, есть и русский.

Возможности архивации

7-Zip поддерживает достаточно много форматов сжатия: ZIP, GZIP, TAR, BZIP2 и собственный 7z. Форматы RAR, CAB, ARJ, Z, СРЮ, RPM, DEB и SPLIT поддерживаются только на уровне просмотра содержимого и распаковки.

Конечно же, наибольший интерес представляет именно формат 7z, хотя и с архивированием файлов в другие форматы программа справляется очень хорошо (например, в формат ZIP файлы во многих случаях сжимаются лучше, чем с использованием приложения WinZip).

Формат 7z поддерживает файлы практически неограниченного размера (до 16 000 000 000 Гбайт) и умеет сжимать их так, что оставляет позади даже WinRAR. Во многом это происходит благодаря более совершенному алгоритму LZMA, который используется по умолчанию (рис. 2.4).

Рис. 2.4. Окно добавления файла в архив в программе 7-Zip

 

Кроме основного метода архивации, в 7-Zip могут применяться и другие: PPMd, bzip2 и Deflate. Формат 7z имеет открытую архитектуру, поэтому количество используемых методов сжатия может быть увеличено.

LZMA поддерживает технологии Multi-Threading и реализованную в процессорах Pentium 4 Hyper-Threading. Этот алгоритм очень удобен и для встраиваемых приложений. Главная особенность LZMA – это возможность использования очень большого словаря (до 4 Гбайт). Правда, это является причиной медленной работы архиватора на слабых компьютерах. Впрочем, величину словаря можно изменить в настройках программы и каждый пользователь может подобрать его оптимальный размер. Размер можно настраивать вручную или же выбрав один из предложенных уровней сжатия – от Без сжатия до Ультра. Понятно, что чем выше уровень, тем больше будет словарь и тем медленнее будет происходить архивация.

В большинстве случаев достаточно использовать уровень Нормальный. Вышеупомянутый Ультра стоит применять лишь при архивации файлов, которыми вы редко пользуетесь, то есть если вы создаете архив для долгосрочного хранения. Для таких случаев предусмотрена и возможность создания непрерывных (Solid) архивов. Об их особенностях шла речь выше в этой главе при описании WinRAR.

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

7-Zip позволяет создавать самораспаковывающиеся (SFX), а также многотомные архивы. Последняя возможность стала доступной совсем недавно. До ее появления невозможность разбиения файла на части в процессе архивации для многих пользователей была основным недостатком 7-Zip.

Файловый менеджер

Во многих файловых менеджерах есть дополнительная возможность архивации данных при помощи встроенного и/или подключаемых архиваторов, то есть программа для сжатия является дополнением к файловому менеджеру. В случае с 7-Zip все наоборот – программа для работы с файлами является приложением к архиватору.

Файловый менеджер в 7-Zip достаточно удобен, хоть и менее функционален по сравнению с подобными приложениями (рис. 2.5). Однако если учесть, что это не полноценная программа, а лишь приложение к основной, ее функциональность вполне достаточна.

Рис. 2.5. Файловый менеджер 7-Zip

 

Менеджер имеет двухпанельный интерфейс и позволяет выполнять все основные операции с файлами. При помощи кнопок на панели инструментов можно протестировать целостность выбранного архива, а также получить информацию о выделенных файле или папке. Навигация между папками может осуществляться при помощи кнопки перехода на уровень вверх, командной строки или, что удобнее всего, с использованием сочетаний клавиш. Горячие клавиши предусмотрены также для различных вариантов выделения файлов.

Файловый менеджер 7-Zip позволяет просматривать архивы, форматы которых поддерживаются, и сразу же распаковывать нужные файлы. Имеется также возможность разбиения файла на части указанного размера.

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

Тестирование производительности

Отдельно стоит сказать о модуле для тестирования производительности, который встроен в 7-Zip. Он настолько удачен, что его часто используют для тестирования аппаратных возможностей компьютера различные организации. Эту функцию можно также использовать и для определения времени, которое понадобится компьютеру на выполнение поставленного задания. Вызвать модуль для тестирования производительности можно в файловом менеджере, выполнив команду Сервис ? Тестирование производительности.

Модуль для тестирования производительности предлагает два основных теста – компрессию методом LZMA и декомпрессию с использованием того же алгоритма. Оценка производительности компьютера производится в MIPS (миллион инструкций в секунду). Скорость компрессии и оценка производительности зависят от латентности оперативной памяти. Чтобы увеличить использование программой оперативной памяти, можно сделать размер словаря больше (рис. 2.6).

Рис. 2.6. Окно тестирования производительности

 

Установка флажка Многопоточность может ускорить процесс сжатия на 70-80 % на мультипроцессорных системах и на 25 % на компьютере Pentium 4 с Hyper-Threading. При этом компрессия будет происходить в два потока. При распаковке использование двух потоков невозможно, поэтому параметр Многопоточность не влияет на скорость извлечения файлов из архива и оценку производительности. Скорость распаковки во многом зависит от процессора и от скорости, с которой он может выполнять повторяющиеся операции. Общая оценка производительности будет выведена как среднее из полученных оценок сжатия и декомпрессии.

Если при тестировании производительности возникают какие-то ошибки, то они отображаются в строке Ошибок. Если в процессе работы модуля для тестирования производительности была обнаружена хотя бы одна ошибка, то 7-Zip использовать для сжатия файлов не рекомендуется, так как это может привести к потере информации. В большинстве случаев появление ошибок говорит о некорректной работе оперативной памяти.

7-Zip – это пока еще недостаточно хорошо известная, но очень перспективная программа. Несмотря на свой бесплатный статус, она активно развивается и становится лучше с каждой новой версией. В ближайших планах разработчика начало работы над новой, пятой, версией архиватора. В нее он обещает включить возможность работы 7-Zip на других платформах, функцию восстановления архивов, а также добавить новые методы сжатия, разработанные специально для архивации мультимедийных данных.

Совет

Возможно, когда вы будете читать эту книгу, 7-Zip 5 уже выйдет. Если у вас есть такая возможность, посетите официальный сайт программы и загрузите последнюю версию архиватора.

Win Асе

Производитель: e-merge (http://www.winace.com).

Статус: коммерческая.

Ссылка для скачивания: http://www.windowscommandcenter.com/files/wace26i.exe.

Размер: 3,1 Мбайт.

 

В конце этого раздела рассмотрим еще один архиватор, который, как и описанный выше WinRAR и 7-Zip, вполне может претендовать на звание лучшей программы для сжатия файлов. Эта утилита написана немецкими программистами. Данный архиватор содержит большое количество функций, заслуживающих внимания.

Кроме создания архивов ZIP, LHA и MS-CAB, программа использует фирменный алгоритм компрессии данных – АСЕ. Создатели WinAce позиционируют свой продукт, скорее всего, как альтернативу формату ZIP, однако преимущество перед последним столь велико, что сравнивать стоит скорее с более сильными соперниками – форматами RAR и 7z. Степень сжатия файлов с помощью формата АСЕ нередко превосходит популярный RAR.

Возможности архиватора

Одно из достоинств WinAce – удобный интерфейс, который сочетает в себе функции файлового менеджера, а также обозревателя графических файлов, HTML-страниц и ASCII-файлов. Чтобы просмотреть файл при помощи внешнего обозревателя, достаточно выделить его и нажать F3 (рис. 2.7).

Рис. 2.7. Просмотр графического файла в окне программы WinAce

 

Одна из особенностей WinAce – возможность создания непрерывного АСЕ-архива. Эта функция позволяет добиться увеличения компрессии до 50 %. Созданный в программе архив может содержать цифровую подпись, подтверждающую подлинность файла. Архивы, защищенные этой подписью, могут быть изменены только в программе, которая содержит эту идентификационную подпись. Для обеспечения конфиденциальности хранения данных в архиве программа может использовать шифрование файлов.

Архиватор WinAce поддерживает довольно большое количество форматов: АСЕ, ZIP, LHA, MS-CAB, ARC, ARJ, GZIP, TAR, BZIP2, ISO-Images, ZOO и RAR. В программе можно также создавать многотомные архивы, предварительно указав размер тома. WinAce содержит предварительные настройки создания архивов, которые подходят по объему для стандартных носителей CD-R, ZIP-устройств и пр.

В процессе создания архивов программа использует несколько алгоритмов: Delta и Ехе – для ЕХЕ-файлов, Pic – для оптимизации сжатия графики и Sound – для компрессии звука (рис. 2.8). Если вам не нужен какой-либо алгоритм, то его можно отключить, благодаря чему уменьшится время, затрачиваемое программой на создание архивов.

Рис. 2.8. Выбор алгоритмов сжатия в программе WinAce

 

При сжатии данных пользователь имеет возможность выбрать размер словаря, однако в большинстве случаев имеет смысл оставлять этот параметр заданным по умолчанию. Дело в том, что при создании любого архива стоит помнить, что для его распаковки необходимо иметь свободную оперативную память, объем которой равен размеру используемого при сжатии словаря.

Уменьшить размер существующего архива помогает функция оптимизации архивов (рис. 2.9). Благодаря этой команде появляется возможность конвертировать архивы, созданные в других форматах, в формат АСЕ для уменьшения их размера.

Рис. 2.9. Окно оптимизации архивов программы WinAce

 

WinAce интегрируется в оболочку Windows. При этом, например, в контекстном меню Проводника Windows появляются команды добавления файла в архив, архивирования и отправки файла по его почте, шифрования архива, его тестирования, сканирования архива на наличие вирусов. Стоит заметить, что последняя команда доступна, только если к WinAce подключен внешний антивирус.

Недостатки WinAce

Несмотря на то что WinAce выпускается довольно давно, добиться такой популярности среди пользователей, как WinRAR, данному архиватору не удалось. Причин тому несколько.

Во-первых, размер дистрибутива WinAce в несколько раз больше объема установочного файла WinRAR. Во-вторых, чтобы архиватор мог соперничать с конкурентом, он должен превосходить соперника по двум параметрам: скорости и степени сжатия. Размер архивов в формате АСЕ часто меньше, чем после использования WinRAR, однако не настолько, чтобы пользователи обратили на это внимание. Кроме того, WinAce не отличается быстрой работой: он затрачивает на сжатие почти вдвое больше времени, чем WinRAR.

Если сравнивать WinAce с 7-Zip, то главным недостатком первого можно считать то, что он является коммерческим. 7-Zip, как и WinAce, также нельзя назвать самым быстрым архиватором (особенно если используется большой размер словаря), однако первый бесплатен.

Какой архиватор все же лучший?

Трудно со стопроцентной уверенностью сказать, какой архиватор позволяет получить максимальную степень сжатия. Наиболее вероятно, что из WinAce,WinRAR и 7-Zip лучше справится WinRAR. Однако даже при сжатии файлов одного и того же типа (например, графического формата BMP) часто невозможно заранее определить, какой из архиваторов сожмет файл лучше. Наиболее высокая степень сжатия может быть у любого из перечисленных архиваторов. В большинстве случаев определить оптимальный формат сжатия можно только эмпирическим путем, используя функции оптимизации для конкретного типа и размера сжимаемой информации. Поэтому, если размер сжатого файла действительно имеет значение, перед отсылкой файла по почте, размещением на FTP-сервере или записью его на лазерный диск запакуйте данные сразу тремя архиваторами и посмотрите, какой из них справился с заданием лучше других.

Возникает вполне закономерный вопрос: какую программу использовать, если размер архивируемых данных исчисляется сотнями мегабайт или даже гигабайт, ведь в этом случае потребуется огромное количество времени, чтобы выяснить какая утилита лучше выполнит поставленное задание? Совет один: используйте непрерывный архив (если только вы не собираетесь в дальнейшем извлекать из этого архива по одному файлу), а также внимательно следите за диаграммой состояния процесса – WinAce и WinRAR в процессе архивирования представляют информацию о степени сжатия файлов.

Что же касается 7-Zip, то мы не рекомендуем использовать его для упаковки большого объема информации, так как этот процесс может очень сильно тормозить работу системы. Кроме того, о размере итогового файла вы сможете узнать только после окончания архивации – 7-Zip не пытается даже примерно предположить, насколько будут сжаты данные.