· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ZEN —› оптимальное расположение кода для упаковки

Посл.отвђт Сообщенiе


Дата: Май 25, 2004 03:14:43

Так вот собственно топик. Особенно интересует CAB-архиватор. Все дело в том, что не совсем ясно как он работает, вроде бы это ZIP-архивация, поправьте меня если я не прав.

Хотелось бы узнать какие цепочки данных пакуются лучше, какие хуже. Спасибо.


Дата: Май 25, 2004 12:26:59

Есть хорошая книжка "Методы сжатия данных" (www.compression.ru) там алгоритм cab расписан подробно. Он чем-то похож на zip, т.к. кодирует короткую длину совпадения прямо в "метасимвол" на выход => повторы должны быть рядом для лучшего сжатия. Кроме этого пакер пробует несколько путей для сжатия (жадный разбор, нежадный, с отложенным кодированием и пр.) и выбирает наилучший. Поэтому расположить байты для лучшего сжатия не так просто, imho. Для очень коротких файлов может помочь простой перебор, особенно если файл исполняемый, там вариантов не так уж и много.

p.s. кстати пакеров для cab формата нексолько, и пакуют они немного по разному, может просто попробовать разные программы?


Дата: Май 25, 2004 13:56:56

Формат CAB это просто обертка - там может быть сколько угодно методов компрессии. Но стандартных всего четыре:
1) STORE - без сжатия
2) DEFLATE - ну это как в zip'е
3) LZX - любимая поделка мелкомягких
4) QUANTUM - арифметическое кодирование


Дата: Май 25, 2004 14:59:17

На том же compression.ru есть ещё целый раздел про препроцессинг бинарного исполнимого кода для повышения степени сжатия...


Дата: Май 25, 2004 23:45:10

Nothing
Спасибо за линк.

Dr.Golova
У makecab - 3 степени компрессии - 1,2,3. Это соответствует 2-4 у тебя?


Дата: Май 26, 2004 13:19:05

> У makecab - 3 степени компрессии - 1,2,3. Это соответствует 2-4 у тебя

Как ни странно, makecab жмет только с помощью deflate
И я не знаю что значит verbosity level, то это точно не способ компрессии.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.053