Архиватором (упаковщиком) называется программа, позволяющая за счет применения специальных методов сжатия информации создавать копии файлов меньшего размера, а также объединять копии нескольких файлов в один архивный файл, из которого можно при необходимости извлечь файлы в их первоначальном виде.
Весь спектр существующих сегодня архиваторов можно разделить на три группы, которые условно называются файловыми, программными и дисковыми.
Программные архиваторы позволяют упаковать за один прием один единственный файл — исполняемую программу EXE-типа, но зато так, что заархивированная программа будет сразу после ее запуска на исполнение самораспаковываться в оперативной памяти и тут же начинать работу. Здесь удается добиться того, что программа становится вполовину меньше по размеру и ее работоспособность сохраняется. Кроме того, достигается и некоторая защита от постороннего глаза.
Дисковые архиваторы позволяют программным способом увеличить почти вдвое доступное дисковое пространство на жестком или гибком диске. Это такие программы, как «Стекер», DblSpace из комплекта DOS, DrvSpase из комплекта Windows 95 и др. Типичный дисковый архиватор представляет собой резидентный (загружаемый в оперативную память и находящуюся в ней, пока не будет выключено питание компьютера) драйвер, который незаметно для пользователя архивирует любую записанную на диск информацию и распаковывает ее обратно при чтении. При этом на физическом диске создается огромный архивный файл (обычно с атрибутом «скрытый»), а для пользователя его содержимое показывается как содержимое еще одного, созданного при инсталляции архиватора, логического раздела диска. В результате эффект почти тот же, как при установке на компьютер дополнительного жесткого диска, однако операции чтения/записи несколько замедляются, поскольку процессору требуется время для упаковки и распаковки, кроме того, при использовании некоторых программ, непосредственно обращающихся к диску, возможны сложности, когда такая программа конфликтует с драйвером архиватора.
Архиватор программа HaoZip — обзор программы
Файловые архиваторы. Для долговременного хранения или передачи по компьютерным сетям файлы архивируются (сжимаются) с помощью файловых менеджеров и специализированных приложений − архиваторов. Такие архиваторы позволяют упаковывать один или несколько файлов (например, все содержимое данного подкаталога вместе с вложенными в него подкаталогами) в единый архивный файл. Размер архивного файла меньше, чем суммарный размер исходных файлов, но воспользоваться запакованными программами или данными, пока они находятся в архиве, нельзя, пока они не будут распакованы. Существует большое количество специализированных программ — архиваторов файлов (WinZip, WinRAR, RowerArchiver и др.).
Одним из наиболее популярных средств создания архивов и управления ими является полностью русифицированный архиватор WinRAR, версии которого существуют для различных операционных систем: MS-DOS, Windows, Linux и др.
WinRAR позволяет работать с архивами RAR и ZIP, использует высокоэффективный алгоритм сжатия данных, создает многотомные и самораспаковывающиеся архивы и так далее.
Архиваторы в Mac OS X
Алгоритмы и методы архивации. Существуют различные алгоритмы архивации данных без потери информации, при которых при разархивации данные будут восстановлены в исходном виде. Самый простой алгоритм сжатия данных (running) основан на замене повторяющихся битов (в тексте может иметься последовательность одинаковых символов, в графическом файле − закрашенная одним цветом область и так далее). Например, в тексте подряд идут 10 пробелов, которые кодируются 10-ю байтами. При архивации они заменяются 3-мя байтами (первый байт − кодирует заменяемый символ; второй байт − специальный байт «флажка» архивации, который указывает на необходимость развернуть первый байт в последовательность байтов; третий байт указывает количество повторяющихся байтов).
Алгоритм кодирования одинаковых последовательностей символов (LZW) ищет в текстовых файлах одинаковые слова, а в графических − одинаковые «узоры». Каждый такой фрагмент файла представляется определенным кодом (последовательностью бит) и в процессе архивации при повторных появлениях заменяется ссылкой на первичный код.
Существуют различные методы архивации файлов (ZIP, RAR, ARJ и др.), которые используют вышеописанные и другие алгоритмы архивации. Методы архивации различаются степенью сжатия файлов, скоростью выполнения и другими параметрами. Лучше всего сжимаются текстовые и графические файлы и практически не сжимаются файлы архивов.
Источник: ronl.org
Программы архивирования данных
Архивация — это сжатие одного или более файлов с целью экономии памяти и размещение сжатых данных в одном архивном файле. Архивация данных — это уменьшение физических размеров файлов, в которых хранятся данные, без значительных информационных потерь.
Архивация проводится в следующих случаях:
· Когда необходимо создать резервные копии наиболее ценных файлов
· Когда необходимо освободить место на диске
· Когда необходимо передать файлы по E-mail
Архивный файл представляет собой набор из нескольких файлов (одного файла), помещенных в сжатом виде в единый файл, из которого их можно при необходимости извлечь в первоначальном виде. Архивный файл содержит оглавление, позволяющее узнать, какие файлы содержатся в архиве.
В оглавлении архива для каждого содержащегося в нем файла хранится следующая информация:
· Размер файла на диске и в архиве
· Сведения о местонахождения файла на диске
· Дата и время последней модификации файла
· Код циклического контроля для файла, используемый для проверки целостности архива
Любой из архивов имеет свою шкалу степени сжатия. Чаще всего можно встретить следующую градацию методов сжатия:
· Без сжатия (соответствует обычному копированию файлов в архив без сжатия)
· Быстрый (характеризуется самым быстрым, но наименее плотным сжатием)
· Максимальный (максимально возможное сжатие является одновременно и самым медленным методом сжатия)
Лучше всего архивируются графические файлы в формате.bmp, документы MS Office и Web-страницы.
Что такое архиваторы?
Архиваторы – это программы (комплекс программ) выполняющие сжатие и восстановление сжатых файлов в первоначальном виде. Процесс сжатия файлов называется архивированием. Процесс восстановления сжатых файлов – разархивированием. Современные архиваторы отличаются используемыми алгоритмами, скоростью работы, степенью сжатия (WinZip 9.0, WinAce 2.5, PowerArchiver 2003 v.8.70, 7Zip 3.13, WinRAR 3.30, WinRAR 3.70 RU).
Другие названия архиваторов: утилиты — упаковщики, программы — упаковщики, служебные программы, позволяющие помещать копии файлов в сжатом виде в архивный файл.
В ОС MS DOS существуют архиваторы, но они работают только в режиме командной строки. Это программы PKZIP и PKUNZIP, программа архиватора ARJ. Современные архиваторы обеспечивают графический пользовательский интерфейс и сохранили командную строку. В настоящее время лучшим архиватором для Windows является архиватор WinRAR.
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Источник: studopedia.ru
Программы архивации данных
В процессе эксплуатации ПК возможна порча или потеря информации на магнитных дисках. Зачастую это происходит из-за физической порчи магнитного диска, случайного уничтожения файлов, а также из-за разрушения информации компьютерными вирусами. Для уменьшения потерь, следует иметь копии используемых файлов.
Однако, при копировании пакетов программ и файлов больших объемов могут возникать проблемы нехватки свободного места на дисках. В этом случае целесообразно использовать специальные программы сжатия файлов, так называемые программы архивации. Данные программы используются также в случае наличия на дисках компьютера больших объемов информации, которая понадобится только в будущем, и переноса массивов информации между компьютерами.
Архиватор — программа, осуществляющая упаковку одного и более файлов в архив или серию архивов, для удобства переноса или хранения, а также распаковку архивов. Многие архиваторы используют сжатие без потерь. Архивы предназначены для хранения данных в удобном компактном виде. Данные программы сжимают файлы и объединяют их специальным образом.
В результате работы программ архивации создаются архивные файлы (архивы). В качестве данных обычно выступают файлы и папки.
Основными характеристиками программ-архиваторов являются:
2.сервис (набор функций архиватора);
3.степень сжатия — отношение размера исходного файла к размеру упакованного файла.
Степень сжатия файла характеризуется коэффициентом Кс, отражающим процентное отношение объёма сжатого файла Vс к объёму исходного файла Vо: Кс=Vс/Vо*100%
Программами архивации могут создаваться два типа архивов: активные и пассивные. Активные (или саморазархивируемые) оформляются программой как исполняемые и им присваивается расширение .exe. Они содержат в себе средства разархивации и сжатую информацию. Пассивные требуют для извлечения файлов из архива наличия соответствующей программы.
Сжатие данных используется очень широко. Можно сказать, почти везде. Например, документы PDF , как правило, содержат сжатую информацию.
Довольно много исполняемых файлов EXE сжаты специальными упаковщиками. Всевозможные мультимедийные файлы (GIF, JPG, MP3, MPG) являются своеобразными архивами.
Основным недостатком архивов является невозможность прямого доступа к данным. Их сначала необходимо извлечь из архива или распаковать. Операция распаковки, впрочем, как и упаковки, требует некоторых системных ресурсов. Это не мгновенная операция. Поэтому архивы в основном применяют со сравнительно редко используемыми данными.
Например, для хранения резервных копий или установочных файлов.
В данный момент существует много архиваторов. Они имеют разную распространенность и эффективность. Некоторые интересные архиваторы не известны широкому кругу потенциальных пользователей. Особый интерес представляют оценка и сравнение эффективности сжатия популярных архиваторов.
Методы сжатия архиваторов
Разработано большое количество разнообразных методов, их модификаций и подвидов для сжатия данных. Современные архиваторы, как правило, одновременно используют несколько методов одновременно. Можно выделить некоторые основные.
Кодирование длин серий (RLE) — сокращение от run — length encoding. Очень простой метод. Последовательная серия одинаковых элементов данных заменяется на два символа: элемент и число его повторений. Широко используется как дополнительный, так и промежуточный метод. В качестве самостоятельного метода применяется, например, в графическом формате BMP .
Словарный метод или метод Лемпела — Зива (LZ) — сокращение от Lempel Ziv — имена авторов. Наиболее распространенный метод. Используется словарь, состоящий из последовательностей данных или слов. При сжатии эти слова заменяются на их коды из словаря. В наиболее распространенном варианте реализации в качестве словаря выступает сам исходный блок данных.
Основным параметром словарного метода является размер словаря. Чем больше словарь, тем больше эффективность. Однако для неоднородных данных чрезмерно большой размер может быть вреден, так как при резком изменении типа данных словарь будет заполнен неактуальными словами. Для эффективной работы данного метода при сжатии требуется дополнительная память.
Приблизительно на порядок больше, чем нужно для исходных данных словаря. Существенным преимуществом словарного метода является простая и быстрая процедура распаковки. Дополнительная память при этом не требуется. Такая особенность особенно важна, если необходим оперативный доступ к данным.
Энтропийный метод (Huffman — кодирование Хаффмана, Arithmetic coding — арифметическое кодирование). В этом методе элементы данных, которые встречаются чаще, кодируются при сжатии более коротким кодом, а более редкие элементы данных кодируются более длинным кодом. За счет того, что коротких кодов значительно больше, общий размер получается меньше исходного. Широко используется как дополнительный метод. В качестве самостоятельного метода применяется, например, в графическом формате JPG .
Метод контекстного моделирования (CM) — сокращение от context modeling — контекстное моделирование. В этом методе строится модель исходных данных. При сжатии очередного элемента данных эта модель выдает свое предсказание или вероятность. Согласно этой вероятности, элемент данных кодируется энтропийным методом.
Чем точнее модель будет соответствовать исходным данным, тем точнее она будет выдавать предсказания, и тем короче будут кодироваться элементы данных. Для построения эффективной модели требуется много памяти. При распаковке приходится строить точно такую же модель. Поэтому скорость и требования к объему оперативной памяти для упаковки и распаковки почти одинаковы. В данный момент методы контекстного моделирования позволяют получить наилучшую степень сжатия, но отличаются чрезвычайно низкой скоростью.
PPM ( Prediction by Partial Matching — предсказание по частичному совпадению). Это особый подвид контекстного моделирования. Предсказание выполняется на основании определенного количества предыдущих элементов данных. Основным параметром является порядок модели, который задает это количество элементов.
Чем больше порядок модели, тем выше степень сжатия, но требуется больше оперативной памяти для хранения данных модели. Если оперативной памяти недостаточно, то такая модель с большим порядком показывает низкие результаты. Метод PPM особенно эффективен для сжатия текстовых данных. Предварительные преобразования или фильтрация.
Данные методы служат не для сжатия, а для представления информации в удобном для дальнейшего сжатия виде. Например, для несжатых мультимедиа данных характерны плавные изменения уровня сигнала. Поэтому для них применяют дельта-преобразование, когда вместо абсолютного значения берется относительное. Существуют фильтры для текста, исполняемых файлов, баз данных и другие.
Метод сортировки блока данных (BWT) — сокращение от Burrows Wheeler Transform — по имени авторов. Это особый вид или группа преобразований, в основе которых лежит сортировка. Такому преобразованию можно подвергать почти любые данные. Сортировка производится над блоками, поэтому данные предварительно разбиваются на части.
Основным параметром является размер блока, который подвергается сортировке. Для распаковки данных необходимо проделать почти те же действия, что и при упаковке. Поэтому скорость и требования к оперативной памяти почти одинаковы. Архиваторы, которые используют данный метод, обычно показывают высокую скорость и степень сжатия для текстовых данных.
Непрерывные блоки или непрерывный режим (Solid mode — непрерывный режим). Во многих методах сжатия начальный участок данных или файла кодируется плохо. Например, в словарном методе словарь пуст. В методе контекстного моделирования модель не построена.
Когда количество файлов большое, а их размер маленький, общая степень сжатия значительно ухудшается за счет этих начальных участков. Чтобы этого не происходило при переходе на следующий файл, используется информация, полученная исходя из предыдущих файлов. Аналогичного эффекта можно добиться простым представлением исходных файлов в виде одного непрерывного файла.
Этот метод используется во многих архиваторах и имеет существенный недостаток. Для распаковки произвольного файла необходимо распаковать и файлы, которые оказались в начале архива. Это необходимо для правильного заполнения словаря или построения модели. Существует и промежуточный вариант, когда используются непрерывные блоки фиксированного размера. Потери сжатия получаются минимальными, но для извлечения одного файла, который находится в конце большого архива, необходимо распаковать только один непрерывный блок, а не весь архив.
Сегментирование Во всех методах сжатия при изменении типа данных собственно сам переход кодируется очень плохо. Словарь становится не актуальным, модель настроена на другие данные. В этих случаях применяется сегментирование. Это предварительная разбивка на однородные части. Затем эти части кодируются по отдельности или группами.
Особо хочется подчеркнуть, что существует большое количество методов сжатия. Каждый метод обычно ориентирован на один вид или группу реальных данных. Хорошие результаты показывает комплексное использование методов.
Особенности данных Степень сжатия в основном зависит от исходных данных. Хорошо сжимаются почти все предварительно несжатые данные, например, исполняемые файлы (EXE), тексты (TXT , DOC), базы данных (DBF), простые несжатые изображения (BMP). Ограниченно сжимаются несжатый звук (WAV), сложные несжатые изображения (BMP). Не сжимаются почти все уже сжатые данные, например, архивы (ZIP ,CAB), сжатые документы (PDF), сжатая графика и видео (JPG, GIF, AVI, MPG), сжатый звук (MP3). Их сжатие находится в пределах пары процентов за счет служебных блоков и небольшой избыточности.
Для сжатия некоторых специфических данных (текст, несжатые изображения, несжатый звук) существуют специальные методы и архиваторы. Такие архиваторы обеспечивают высокую степень сжатия и высокую скорость. Однако так называемые универсальные архиваторы постепенно дополняются подобными методами.
В данный момент только для несжатого звука существуют высокоэффективные специальные архиваторы, такие, как OptimFROG, Monkey Audio. Для текстов и изображений лучшие универсальные архиваторы показывают лучшую степень сжатия. Например, архив изображений получится меньше, если использовать формат BMP и архиватор WinRK вместо специализированных графических форматов, таких как JPEG 2000 ( LossLess — сжатие без потерь).
Большое количество типов данных уже являются сжатыми. Использование архиваторов дает мизерное уменьшение размера. Тем не менее даже в таких случаях эффективное сжатие теоретически возможно. Это обусловлено тем, что в большинстве распространенных форматов файлов, использующих сжатие, применены не самые эффективные методы.
Например, в основе формата JPG лежит энтропийное сжатие, которое используется после преобразований Фурье. Данные кодируются не оптимальными блоками, что обусловлено желанием сделать формат JPG устойчивым к повреждениям и возможности частичного извлечения информации.
Перекодировав файлы JPG при помощи высокоэффективных методов, можно добиться сжатия порядка 75% от исходного файла (архиватор StuffIt). Собственно сам исходный файл JPG сжимается обычными архиваторами только до 96%. Однако подобные манипуляции с файлами JPG стали возможны только недавно и еще не получили распространения. В большинстве случаев сжимать уже сжатые данные бесполезно.
Какие существуют архиваторы и чем они отличаются?
Следует различать собственно программу-архиватор, формат архивов и методы сжатия. Даже один и тот же метод сжатия может иметь варианты реализации. Например, существует более десятка программ-архиваторов, которые могут создавать архивы в формате ZIP. В свою очередь данные в формате ZIP могут быть сжаты различными методами: Deflate, Deflate64, BZip2.
Метод Deflate имеет несколько реализаций с разной скоростью и степенью сжатия (разница порядка 5%). С помощью этого метода архиватор 7-zip позволяет создавать архивы в формате ZIP и 7Z.
Обычно архиваторы могут создавать архивы в собственном эксклюзивном формате с использованием своих оригинальных методов. Например, архиватор RAR позволяет создавать архивы RAR. В формате архива и методах сжатия заключаются основные преимущества того или иного архиватора.
В простейшем случае архиватор позволяет только упаковать или распаковать один файл. Кроме собственно сжатия данных, современные архиваторы обеспечивают некоторые дополнительные функции.
Функции архиваторов
1.сжатие некоторых файлов и целых директорий;
2.создание самораспаковывающихся (SFX) архивов;
3.изменение содержимого архива;
4.шифрование содержимого архива;
5.информация для восстановления архива при частичном повреждении и возможность восстановления поврежденных архивов;
6.разбивка архива на несколько частей или томов;
7.консольная версия программы для работы из командной строки;
8.графическая (GUI) версия программы.
Стоит отметить, что, несмотря на формальное наличие, реализация каждой дополнительной функции может быть выполнена на совершенно разном уровне.
Классификация архиваторов
1.Файловые архиваторы.
2.Компрессоры.
С файловыми архиваторами многим, наверняка, приходилось сталкиваться. Достаточно перечислить их названия: ZIP, RAR. Такие архиваторы позволяют упаковывать один или несколько файлов в единый архивный файл. Размер архива, как правило, меньше чем суммарный размер исходных файлов.
Компрессоры сжимают за один прием всего один исполняемый файл (типа ЕХЕ) таким образом, что после запуска программа самораспаковывается в оперативной памяти и продолжает свою работу.
Кроме различий в функциональности, можно разбить архиваторы на две группы: асимметричные и симметричные. Асимметричные архиваторы требуют для операции распаковки значительно меньше времени и оперативной памяти, чем для операции упаковки. Это позволяет быстро получать содержимое архива на маломощных компьютерах.
Симметричные архиваторы требуют для операций упаковки и распаковки одинаковое время и объем оперативной памяти. Использование таких архиваторов на широком парке компьютеров или для оперативного доступа к содержимому архива ограничено. Известный архиватор RAR в качестве основного использует асимметричный словарный метод сжатия, а для текстов может использовать симметричный PPM-метод. Таким образом, распаковка архивов RAR, сжатых с максимальной степенью сжатия, может быть невозможна на компьютерах с ограниченным объемом оперативной памяти. Все или почти все передовые архиваторы с высокой степенью сжатия являются симметричными.
Точной статистики по распространенности архиваторов нет. Безусловно, самым распространенным архиватором являются ZIP и его модификации. По своей распространенности он значительно превосходит ближайших конкурентов. Следом идут RAR и ACE. В последние годы встречается архиватор 7-zip.
Исключение составляют некогда популярные ARJ и LHA. В данный момент они не актуальны из-за очень низкой степени сжатия.
Несмотря на очень скромные данные о распространенности архиваторов, их существует большое множество. Основная масса относится к категории экспериментальных и архиваторов с ограниченной функциональностью. Тем не менее, каждый их них позволяет выполнять собственно процедуру сжатия данных. Меньшая распространенность увеличивает вероятность ошибок в программе.
К ним стоит относиться с некоторой осторожностью. Например, при проведении тестирования была найдена ошибка в архиваторе WinRK (PWCM), которую, однако, оперативно исправили.
Оглавление
Источник: www.wikiznanie.ru