Архивация и сжатие файлов

Автор работы: Пользователь скрыл имя, 05 Ноября 2014 в 13:45, курсовая работа

Краткое описание

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

Вложенные файлы: 1 файл

Архивация и сжатие файлов.docx

— 76.85 Кб (Скачать файл)

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

Далее рассмотрим популярные программы архиваторы.

WinRAR

Версия 2.90 Final

Автор: Евгений Рошал (roshal@rarsoft.com)

Поддерживаемые платформы: Windows, Linux, BeOSand DOS-32

WinRAR - 32-разрядная версия архиватора RAR для Windows. Помимо полной поддержки RAR и ZIP, WinRAR 2.90 может распаковывать UUE, GZ, TAR, ARJ, LZH, ACE, CAB, BZIP2, JAR (JavaARchive) и ACE 2.0 архивов. WinRAR имеет оригинальный алгоритм  сжатия, обладающий высокими показателями  коэффициента сжатия, особенно на  исполняемых файлах, больших текстовых  файлах и т.д. При этом количество  входящих в архив сжатых файлов  не ограничено.

Имеется поддержка ZIP-архивов; графический интерактивный интерфейс наряду с командной строкой. WinRAR предоставляет возможность создания solid-архивов, что дает выигрыш при архивировании большого количества файлов.

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

Также имеются дополнительные функции, например шифрование, добавление архивных комментариев, протоколирование ошибок и пр.

WinZip

Версия v8.1

Автор:NicoMak (support@winzip.com)

Поддерживаемые платформы: Win9x, WinNT, Mac

Одна из самых популярных в Интернете программ. Сам ZIP-алгоритм свободно используется в десятках, если не в сотнях программ, и, тем не менее, для большинства пользователей Windows именно WinZIP служит стандартной программой для работы с архивами. WinZipпрост в работе, имеет поддержку длинных имен и оптимизирован для работы в среде Windows.

WinZIP умеет просматривать и извлекать  файлы из прочих, менее распространенных  форматов архивов, таких как ARJ, LZH, ARC, TAR, TAZ, TGZ, Z, GZ, CAB, UUE, XXE, UU, B64, HQX, BHX. Есть  функции инсталляции программ, экранных  тем и скрин-сэйверов из архивов, выполнения многих операций через  пошаговые Wizard'ы, сжатия и отправки  файлов по почте, проверки содержимого  архивов внешним антивирусом, управления  закладками избранных архивных  директорий, поддерживается возможность  интеграции с Проводником Windows (добавление  команд в контекстные меню). Имеются  отдельные утилиты для работы  из командной строки, интеграции  с популярными Интернет-браузерами, создания самораспаковывающихся  архивов.

WinZip имеет весьма удобную функцию  автоматической инсталляции для  программного продукта, распространяемого  в виде Zip-файлов.

Для упрощенного архивирования/разархивирования файлов WinZipпредлагает мастер-программуWinZipWizard. Имеется возможность организации файлов в «любимые» папки (FavoriteZipFolders). WinZip позволяет организовать Zip-файлы в виде одного «листа», который помогает легче объединять и сортировать Zip-файлы независимо от того, где они физически хранятся. Функция поиска позволяет найти любые Zip-файлы, «потерянные» на жестком диске. Имеется возможность создавать саморазархивирующиеся файлы. WinZip можно настроить для работы с большинством современных антивирусных сканеров.

WaveZip

Версия 2.0

Автор:GadgetLabs

Поддерживаемые платформы: Win9x, WinNT, Mac

Программа разрабатывалась как средство для сжатия больших аудио WAV-файлов, которые занимают много места.

WaveZIPпрост в работе и позволяет  быстро находить, селектировать  и конвертировать файлы. Поддерживается  функция Drag-and-drop из Windows Explorer.

В программе реализована специальная технология MUSICompress от компании SoundspaceAudio. Компрессия происходит абсолютно без потерь, алгоритмы оптимизированы именно под задачи сжатия WAV-формата (средняя степень сжатия в зависимости от типа файла достигает 30-60%).

WavPack

Версия 3.92

Автор:DavidBryant (david@wavpack.com)

Поддерживаемые платформы: Win9x, WinNT, Mac

Консольный компрессор, специализирующийся на аудиосжатии. Предоставляет возможность упаковки/распаковки без потерь 16/24-битных моно- и стереофайлов в WAV-формате. WavPack показывает высокую скорость работы, обеспечивает 25-50-процентное сжатие поп-музыки и немного лучшее сжатие для классической музыки и композиций с широким динамическим диапазоном. Максимальный достижимый уровень упаковки - 87% (для периодов тишины). Предоставляется настраиваемый режим сжатия с потерями (до 67% с неслышимыми потерями и до 77% с заметным шумом), возможно сжатие «сырых» аудиофайлов неизвестных форматов, поддерживается быстрый режим упаковки, есть WinAMP-плагин для проигрывания сжатых WavPack'ом файлов.

PowerArchiver

Версия v7.02

Автор: Ivan Petrovic (ivanpetrov@ipsoft.cjb.net)

Поддерживаемыеплатформы: Win9x, WinNT

Мощнаямногоформатная Windows GUI-оболочка, позволяющаяработатьсархивамивформатах ZIP, RAR, CAB, ARJ, LHA, ACE, ARC, TAR, BZIP2, TAR.BZ2, GZ, BH, ZOO, XXE, UUE. Помимо стандартных операций PowerArchiver может производить переименование файлов в архивах, инсталлировать из них программы, проверять содержимое на вирусы, конвертировать архивы из одного формата в другой, защищать их паролем, чинить, создавать многотомные и самораспаковывающиеся (SFX) архивы. Программа также позволяет своими средствами просматривать файлы TXT, RTF, BMP, ICO, GIF, WMF, EMF и JPG, распечатывать списки архивных файлов или экспортировать их в TXT- и HTML-форматах. Имеются средства управления списком быстрого доступа к часто используемым директориям, изменения внешнего вида кнопочной панели с помощью скинов, произведения операций резервирования данных с помощью скриптов, поиска обновлений программы в Интернете, создания отдельного архива для каждого сжимаемого файла.

PowerArchiver имеет удобный переключаемый  интерфейс в стиле Office 2000 с подробной  справочной системой и интегрируется  с Проводником Windows, обеспечивая  поддержку операций Drag&Drop и удобных  контекстных меню.

ZipMagic

Версия 4.0

Поддерживаемые платформы: Win9x, WinNT

Компания Mijenix выпустила обновленную версию своей популярной программы ZipMagic. Цель программы - обеспечить возможность работать с архивами как с обыкновенными дисковыми папками. То есть все zip-файлы, имеющиеся на дисках, магическим образом «превращаются» в обычные директории. При этом ни Проводник, ни NortonCommander, ни любая другая программа не подозревают, что имеют дело с архивами. Пользователь может работать с псевдопапками: переименовывать их, запускать и инсталлировать из них программы, игры, просматривать, редактировать, копировать, переименовывать файлы, создавать и удалять поддиректории и т.д. ZipMagic незаметно будет производить операции сжатия/распаковки, причем значительно быстрее, чем большинство известных zip-упаковщиков.

В новой версии программы добавлена поддержка большинства новых форматов архивов и кодировок. Среди них: RC, ARJ, CAB, GZ, LHA/LZH, RAR, TAR, ZOO, UU/XXEncode и многие другие. При этом для работы с файлами этих форматов вам не понадобятся сами утилиты, создавшие их. Для работы с ними предназначена поставляемая с ZipMagic утилита ZipTools. Все вышеупомянутые типы файлов автоматически ассоциируются в реестре с этой утилитой и, естественно, ею и открываются.

ZipTools представляет собой некое  подобие Проводника, с помощью  которого можно выполнять все  стандартные функции, присущие файл-менеджерам (копирование, перенос, переименование  файлов, поддержка Drag&Drop, настройка  панелей, сортировка, многооконность  и т.п.), а также специфические  функции типа UU-кодирования, конвертирования  в ZIP, форматирования дисков, поиска  файлов/компьютеров и тому подобное. Кроме того, ZipTools позволяет быстро  просматривать более 60 форматов  файлов/документов, в том числе  мультимедийных, не выходя из  программы.

В составе ZipMagic также поставляется утилита ZipWizard — автоматизированное средство создания/конвертирования/распаковки архивов для новичков, предоставляющее для выполнения стандартных операций пошаговый упрощенный интерфейс.

Помимо этого с программой поставляются специальныеzip-плагины для браузеров и e-mail. Первый — ZipSurfer — предназначен для работы в NetscapeNavigator, NetscapeCommunicator и Internet Explorer и позволяет распаковывать, просматривать свежескачанные из Интернета архивы, инсталлировать из них программы и выполнять прочие операции с архивами, не выходя из браузера (нечто подобное имеется в известном WinZip).

Второй плагин — ZipMail — представляет собой дополнение к таким программам, как EudoraLight, EudoraPro, Microsoft Exchange, Outlook 97 и Outlook 98.

В опциях ZipMagic можно изменить огромное количество параметров, среди которых имеются и специальные параметры Windows NT. Вы можете определить опции автозапуска программы, установить коэффициент сжатия, с которым файлы будут сжиматься при создании архива-папки, установить размер кэша программы, горячие клавиши, выбрать диски, для которых будут работать функции ZipMagic, определить время включения/отключения функций программы. Можно также определить, какие приложения все же будут рассматривать zip-архивы как файлы, а не как директории, например резервные и дисковые утилиты.

 

 

РАЗДЕЛ 2. ПРИМЕРЫ АЛГОРИТМЫ АРХИВАЦИИ И СЖАТИЯ ИНФОРМАЦИИ С ПРИМЕНЕНИЕМ РАЗЛИЧНЫХ ПРОГРАММЫХ СРЕДСТВ.

 

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

Различные алгоритмы могут требовать различного количества ресурсов вычислительной системы, на которых они реализованы:

  • оперативной памяти (под промежуточные данные);
  • постоянной памяти (под код программы и константы);
  • процессорного времени.

В целом, эти требования зависят от сложности и «интеллектуальности» алгоритма. Общая тенденция такова: чем эффективнее и универсальнее алгоритм, тем большие требования к вычислительным ресурсам он предъявляет. Тем не менее, в специфических случаях простые и компактные алгоритмы могут работать не хуже сложных и универсальных.

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

Алгоритм сжатия требует больших вычислительных ресурсов, нежели алгоритм восстановления.

Это наиболее распространённое соотношение, характерное для случаев, когда однократно сжатые данные будут использоваться многократно. В качестве примера можно привести цифровые аудио- и видеопроигрыватели.

Алгоритмы сжатия и восстановления требуют приблизительно равных вычислительных ресурсов.

Наиболее приемлемый вариант для линий связи, когда сжатие и восстановление происходит однократно на двух её концах (например, в цифровой телефонии).

Алгоритм сжатия существенно менее требователен, чем алгоритм восстановления.

Такая ситуация характерна для случаев, когда процедура сжатия реализуется простым, часто портативным устройством, для которого объём доступных ресурсов весьма критичен.

2.1 Описание и особенности некоторых алгоритмов архивации

 

Рассмотрим следующие алгоритмы сжатия:

  1. RLE
  2. коды Хаффмана
  3. метод «стопкикниг» (MTF – Move to Font)
  4. арифметическое кодирование

RLE

Алгоритм RLE (RunLengthEncoding, упаковка, кодирование длин серий), является самым быстрым, простым и понятным алгоритмом сжатия данных и при этом иногда оказывается весьма эффективным. Именно подобный алгоритм используется для сжатия изображений в файлах PCX. Он заключается в следующем: любой последовательности повторяющихся входных символов ставится в соответствие набор из трех выходных символов: первый-байт префикса, говорящий о том, что встретилась входная повторяющаяся последовательность, второй-байт, определяющий длину входной последовательности, третий-сам входной символ - <prefix,length,symbol>. Лучше всего работу алгоритма пояснить на конкретном примере.

Например: пусть имеется (шестнадцатиричный) текст вида

05 05 05 05 05 05 01 01 03 03 03 03 03 03 05 03 FF FFFFFF

из 20 байт. Выберем в качестве префикса байт FF. Тогда на выходе архиватора мы получим последовательность

FF 06 05 FF 02 01 FF 06 03 FF 01 05 FF 01 03 FF 04 FF

Ее длина-18 байт, то есть достигнуто некоторое сжатие. Однако, нетрудно заметить, что при кодировании некоторых символов размер выходного кода возрастает (например, вместо 01 01 - FF 02 01). Очевидно, одиночные или дважды (трижды) повторяющиеся символы кодировать не имеет смысла - их надо записывать в явном виде. Получим новую последовательность:

FF 06 05 01 01 FF 06 03 05 03 FF 04 FF

длиной 13 байт. Достигнутая степень сжатия: 13/20 = 65%.

Нетрудно заметить, что префикс может совпасть с одним из входных символов. В этом случае входной символ может быть заменен своим “префиксным” представлением, например:

FF то же самое, что  и FF 01 FF (три байта вместо одного).

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

Информация о работе Архивация и сжатие файлов