тема: Архивация данных. Использование программ-архиваторов
кнопки
Архивация данных – это объединение нескольких файлов или каталогов в один файл – архив. Сжатие данных – это уменьшение объема выходных файлов путем удаления избыточной информации.
Для выполнения этих заданий используются так называемые программ-архиваторы, которые обеспечивают как архивацию, так и сжатие данных. С помощью специальных алгоритмов архиваторы удаляют из файлов всю избыточную информацию, а при обратных операциях распаковки они обновляют информацию, представляя ее в первичном виде. При этом сжатие и обновление информации производится без потерь. Сжатие без потерь является актуальным при работе с текстовыми и программными файлами, в задачах криптографии.
Существуют также методы сжатия с потерями. Они удаляют из потока информацию, которая незначительно влияет на данные или вообще не воспринимается человеком. Эти методы сжатия используются для аудио- и видеофайлов, некоторых форматов графических файлов.
Архив – это файл, содержащий в себе один или несколько файлов в сжатом (упакованном) виде.
Признаки архива:
- Архив занимает меньше места, чем исходный объект.
Исключение составляют очень маленькие файлы, например, ярлыки.
А также сжатые файлы, например *.mp3.
- Архив нельзя использовать по назначению.
Архиватор – это специальная служебная программа, предназначенная, прежде всего, для компрессии файлов, т.е. с помощью которой можно сжимать файлы, размещать «длинные» архивы на дискетах, просматривать содержание архивов, контролировать их целостность, распаковывать архивы и т.д.
Архивы создаются с целью уменьшения объема первоначального файла (экономится место на диске) и возрастания скорости копирования.
Для создания архивного файла необходимо выполнить следующие действия:
- Открыть Проводник.
- Выделить файлы.
- Щелкнуть правой клавишей мыши.
- Выбрать архиватор (пример .2).
- Выбрать одну из команд
Самораспаковывающийся архив – это исполняемая программа, которая включает в себя одновременно как архив, так и программу для его распаковки. Это особенно выгодно, когда неизвестно, есть ли соответствующая программа архивации на компьютере, на котором предстоит распаковка.
Другими словами, Самораспаковывающиеся или самораскрывающиеся архивы – это архивный файл, который будет иметь расширение *.exe и запускаться как обычная программа.
Архивация - это упаковка (сжатие, компрессия) файла или группы файлов с целью уменьшить место, занимаемое ими на диске. Архивацию используют при хранении запасных (страховых) копий на дискетах или жестких дисках, а также при создании дистрибутивных копий программных продуктов, чтобы уменьшить количество дискет при продаже или передаче продукта (или чтобы уместить дистрибутив на одном компакт-диске).
Методы сжатия без потерь
На сегодняшний день разработано множество спосов сжатия без потерь, в основе их лежат такие методы кодирования:
Групповое кодирование RLE (Run Lengs Encoding) – один из самых старых методов сжатия, который используют в основном для архивации графики.
Кодирование Хаффмана (Huffman) – в основе лежит тот факт, что некоторые символы в тексте могут попадаться чаще средней частоты повторений, а другие - реже.
Кодирование Лемпеля – Зива (Lempel, Ziv) – использует факт неодноразового повторения фрагментов текста, т. е. последовательностей байтов.
Типовые функции программ архиваторов следующие:
Помещение исходных файлов в архив
Извлечение файлов из архива
Удаление файлов из архива
Просмотр оглавления архива
Версификация (проверка) архива
Характеристики программ-архиваторов:
Степень сжатия файла (отношение размера исходного файла к размеру упакованного файла);
Скорость работы (время процесса архивации);
Возможности программы.
В России наиболее распространены архиваторы LHA (расширение *.LZH), ARJ (расширение *.ARJ), PKZIP/PKUNZIP (расширение *.ZIP), WinRAR (расширение *.RAR).
Для Windows широко используется WinRAR. Архиватор предусматривает полную поддержку архивов формата *.ZIP и *.RAR, а также распаковку архивов *.ARJ, *.LZH и некоторых других.
Остановимся на изучении архиватора WinRar, так как он может работать не только со своими архивами, но и с архивами, созданными архиватором WinZip и целым рядом других архивов.
В основе работы программ-архиваторов лежит процедура поиска и перекодирования одинаковых фрагментов содержимого файлов. Сжатие информации в файлах производится за счет устранения избыточности различными способами (за счет упрощения кодов, исключения постоянных битов, замены их повторяющейся последовательности коэффициентом повторения и т. д.). Существует множество алгоритмов сжатия данных. Современные архиваторы, как правило, одновременно используют несколько методов. Можно выделить некоторые основные.
1. Кодирование длин серий (RLE) – (сокращение от run-length encoding - кодирование длин серий).
Последовательная серия одинаковых элементов данных заменяется на два символа: элемент и число его повторений. Широко используется как дополнительный, так и промежуточный метод. В качестве самостоятельного метода применяется, например, в графическом формате BMP.
2. Словарный метод (LZ) – (сокращение от Lempel Ziv - имена авторов).
Используется словарь, состоящий из последовательностей данных или слов. При сжатии эти слова заменяются на их коды из словаря. Основным параметром словарного метода является размер словаря. Чем больше словарь, тем больше эффективность. Однако для неоднородных данных чрезмерно большой размер может быть вреден, так как при резком изменении типа данных словарь будет заполнен неактуальными словами. Для эффективной работы данного метода при сжатии требуется дополнительная память. Приблизительно на порядок больше, чем нужно для исходных данных словаря. Существенным преимуществом словарного метода является простая и быстрая процедура распаковки. Дополнительная память при этом не требуется. Такая особенность особенно важна, если необходим оперативный доступ к данным.
3. Энтропийный метод (Huffman) – кодирование Хаффмена.
В этом методе элементы данных, которые встречаются чаще, кодируются при сжатии более коротким кодом, а более редкие элементы данных кодируются более длинным кодом. За счет того, что коротких кодов значительно больше, общий размер получается меньше исходного.
Сжиматься могут как один, так и несколько файлов, которые в сжатом виде помещаются в архив.
Архивный файл включает оглавление, содержащее следующую информацию о файлах, хранящихся в архиве: имя файла; сведения о каталоге, в котором он находился; дату и время последней модификации файла; размер файла на диске и в архиве; .код циклического контроля для каждого файла, используемый для проверки целостности архива. В качестве расширений архивным файлам по умолчанию устанавливается имя соответствующей программы-архиватора.
Большинство программ-архиваторов позволяют создавать многотомные архивы. Многотомный архив — это последовательность архивных файлов, размер которых не превышает заданного размера тома. Обычно создается при необходимости переноса архива на гибких дисках, если размер архива превышает емкость дискеты. При создании таких архивов архиватор делает паузу для смены дискеты. Многотомный архив имеет общее имя, в расширении же каждого файла многотомного архива указывается номер тома.