Автор работы: Пользователь скрыл имя, 05 Ноября 2014 в 13:45, курсовая работа
Первоначально проводят инвентаризацию содержимого жесткого диска и пытаются рассортировать все данные на нужные и те, которые можно удалить. Однако появляются файлы, которые в настоящий момент не нужны, а удалить их - не поднимается рука. Это могут быть старые проекты, фотографии, игрушки, подборка любимых музыкальных фрагментов или собрание дистрибутивов часто используемых программ и утилит. Их желательно упаковать как можно более компактно и положить в папку до востребования. В этом случае они займут гораздо меньше места на жестком диске и в то же время будут всегда под рукой, а при желании всегда будет возможность восстановить оригинальную копию.
Несмотря на очень скромные данные о распространенности архиваторов, их существует большое множество. Основная масса относится к категории экспериментальных и архиваторов с ограниченной функциональностью. Тем не менее каждый их них позволяет выполнять собственно процедуру сжатия данных.
Далее рассмотрим популярные программы архиваторы.
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 умеет просматривать и
WinZip имеет весьма удобную функцию
автоматической инсталляции
Для упрощенного архивирования/разархивирования файлов WinZipпредлагает мастер-программуWinZipWizard. Имеется возможность организации файлов в «любимые» папки (FavoriteZipFolders). WinZip позволяет организовать Zip-файлы в виде одного «листа», который помогает легче объединять и сортировать Zip-файлы независимо от того, где они физически хранятся. Функция поиска позволяет найти любые Zip-файлы, «потерянные» на жестком диске. Имеется возможность создавать саморазархивирующиеся файлы. WinZip можно настроить для работы с большинством современных антивирусных сканеров.
WaveZip
Версия 2.0
Автор:GadgetLabs
Поддерживаемые платформы: Win9x, WinNT, Mac
Программа разрабатывалась как средство для сжатия больших аудио WAV-файлов, которые занимают много места.
WaveZIPпрост в работе и
В программе реализована специальная технология 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-оболочка,
позволяющаяработатьсархивамивф
PowerArchiver имеет удобный переключаемый
интерфейс в стиле Office 2000 с подробной
справочной системой и
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, форматирования дисков, поиска
файлов/компьютеров и тому
В составе 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-архивы как файлы, а не как директории, например резервные и дисковые утилиты.
Основным критерием различия между алгоритмами сжатия наличие или отсутствие потерь. В общем случае алгоритмы сжатия без потерь универсальны в том смысле, что их применение безусловно возможно для данных любого типа, в то время как возможность применения сжатия с потерями должна быть обоснована.
Различные алгоритмы могут требовать различного количества ресурсов вычислительной системы, на которых они реализованы:
В целом, эти требования зависят от сложности и «интеллектуальности» алгоритма. Общая тенденция такова: чем эффективнее и универсальнее алгоритм, тем большие требования к вычислительным ресурсам он предъявляет. Тем не менее, в специфических случаях простые и компактные алгоритмы могут работать не хуже сложных и универсальных.
Так как алгоритмы сжатия и восстановления работают в паре, имеет значение соотношение системных требований к ним. Нередко можно усложнив один алгоритм значительно упростить другой. Таким образом, возможны три варианта:
Алгоритм сжатия требует больших вычислительных ресурсов, нежели алгоритм восстановления.
Это наиболее распространённое соотношение, характерное для случаев, когда однократно сжатые данные будут использоваться многократно. В качестве примера можно привести цифровые аудио- и видеопроигрыватели.
Алгоритмы сжатия и восстановления требуют приблизительно равных вычислительных ресурсов.
Наиболее приемлемый вариант для линий связи, когда сжатие и восстановление происходит однократно на двух её концах (например, в цифровой телефонии).
Алгоритм сжатия существенно менее требователен, чем алгоритм восстановления.
Такая ситуация характерна для случаев, когда процедура сжатия реализуется простым, часто портативным устройством, для которого объём доступных ресурсов весьма критичен.
Рассмотрим следующие алгоритмы сжатия:
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, размер выходного текста мог бы даже превысить входной. В общем, случае в качестве префикса следует выбирать самый редкий символ входного алфавита.