Лабораторная работа №5
Тема: Изучение программ-архиваторов.
Цель: изучить основные функции и параметры программы-архиватора на примере программы WinRAR.
Теоретические сведения
Сжатие данных— процедура перекодирования данных, производимая с целью уменьшения их объёма. Применяется для более рационального использования устройств хранения и передачи данных.
Сжатие бывает без потерь(когда возможно восстановление исходных данных без искажений) илис потерями(восстановление возможно с искажениями, малозаметными для человеческого глаза или уха). Сжатие без потерь обычно используется при обработке компьютерных программ и данных, реже - для сокращения объёма звуковой, фото- и видеоинформации. Сжатие с потерями применяется для сокращения объёма звуковой, фото- и видеоинформации, оно значительно эффективнее сжатия без потерь.
Сжатие основано на устранении избыточности информации, содержащейся в исходных данных. Примером избыточности является повторение в тексте фрагментов (например, слов естественного или машинного языка). Подобная избыточность обычно устраняется заменой повторяющейся последовательности более коротким значением (кодом). Другой вид избыточности связан с тем, что некоторые значения в сжимаемых данных встречаются чаще других, при этом возможно заменять часто встречающиеся данные более короткими кодами, а редкие — более длинными (вероятностное сжатие). Сжатие данных, не обладающих свойством избыточности (например, случайный сигнал или шум), невозможно без потерь. Также, обычно невозможно сжатие зашифрованной информации.
Архиватор– программа (программная среда), предназначенная для сжатия (компрессии) файлов с целью уменьшения их объема для экономии места на диске или сокращения затрат времени при пересылке их по каналам связи. Сжатие производится по специально разработанным алгоритмам.
Архив— файл, состоящий из одного или нескольких, иногда сжатых (без потерь), файлов. Является результатом работы программы-архиватора.
Виды архивов
Схема совместного использования архиватора и компрессора
Файл, составленный из одного или нескольких файлов и метаданных. Создаются, например, программой tar. Иногда используются совместно с программами сжатия для получения архивов, обычно имеющих расширения типа «.tar.gz» или «.tar.lzma».
Файл, содержащий ровно один сжатый файл. Часто встречается в UNIX-подобных ОС: compress, gzip, bzip2, freeze, lzma. Используются самостоятельно или вместе с программами типа tar для получения архивов, обычно имеющих расширения типа «.tar.gz» или «.tar.bz2».
Некоторые архиваторы и форматы архивов объединяют эти две функции в произвольном порядке — например, 7z, ARJ, ZIP. В таких случаях, если сжатие производится после объединения, архив называется «непрерывным». Это позволяет уменьшить размер полученного архива, но затрудняет восстановление при повреждении данных.
Непрерывный архив(англ.solid archive) — архив, упакованный таким образом, что все сжимаемые файлы рассматриваются как один непрерывный поток данных. При упаковке каждого файла (кроме первого) используется информация, содержащаяся в предыдущих файлах.
К преимуществамнепрерывного архива следует отнестипотенциальное увеличение степени сжатия. При этом чем меньше средний размер файлов, больше самих файлов и больше похожих друг на друга файлов, тем больше увеличение степени сжатия.
Недостатки непрерывного архива:
изменение непрерывного архива (то есть добавление или удаление из него файлов) происходит медленнее, чем обычного;
извлечение отдельного файла из середины или конца архива происходит медленнее, чем из его начала, так как для этого приходится анализировать все предыдущие упакованные файлы;
если непрерывный архив окажется повреждён, то не удастся извлечь не только файл, на данные которого приходится повреждение, но и все файлы, следующие после него, поэтому при создании непрерывных архивов имеет смысл всегда добавлять информацию для восстановления.
Информация для восстановления— необязательная избыточная информация, добавляемая в архив, способная помочь при восстановлении архива в случае его порчи (сбой дискеты,CD-диска и т. д.). Конечно, добавление этой информации немного увеличивает размер архива, но делает его более защищенным. Размер информации для восстановления можно задать в процентах от размера архива.
Архиваторы, поддерживающие добавление информации для восстановления:
WinRar
Многотомные и самораспаковывающиеся архивы также могут быть непрерывными.
Архиваторы, умеющие создавать непрерывные архивы:
WinRar (только для *.rar).
7zip.
Tar+gzip, Tar+bzip2 и т.д.
Имея архив, можно получить исходный файл с помощью соответствующей программы распаковки (иногда объединённой с программой для создания архивов).
Сам архив может состоять из нескольких файлов для облегчения хранения и переноса большого количества данных при ограничениях на размер одной части — например, носителя данных, или сообщения e-mail. Такой архив называется многотомным.