При реализации compress авторы несколько усовершенствовали исходный, предложенный Уэлчем алгоритм LZW. Наиболее интересное усовершенствование — адаптивный сброс (adaptive reset). Вместо того чтобы очищать словарь по достижении определенного объема памяти для его хранения (вариант, рассмотренный мной в начале этого раздела), программа compress продолжает использовать словарь до тех пор, пока остается высоким уровень сжатия. Этот подход базируется на двух наблюдениях, касающихся процесса сжатия LZW. Одно из них заключается в том, что на первых порах величина сжатия сильно зависит от размера словаря. Больший словарь содержит более длинные последовательности, которые в результате эффективно сжимаются в одиночный код. Адаптивный сброс пытается эксплуатировать большой словарь как можно дольше. Другое наблюдение состоит в том, что многие файлы (особенно архивы TAR, содержащие различные виды файлов внутри архива) содержат области с различными типами данных. Для удобства копирования файлов на несколько носителей вам может потребоваться usb aдаптер, который недорого можно купить здесь: http://www.greenconnection.ru/products.html.
В процессе работы алгоритма LZW формируется словарь, специально приспособленный для определенного типа данных. При значительном изменении типа данных словарь уже не будет давать хорошего сжатия. Контролируя эффективность сжатия, программа compress может сбрасывать словарь в момент падения производительности.
Другие программы, использующие алгоритм LZW фактически, работают с двумя зарезервированными кодами. В дополнение к коду сброса, они используют специальный код, с помощью которого помечается конец сжатых данных.
Опубликовал vovan666
April 20 2013 18:17:41 ·
0 Комментариев ·
4500 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.