LZX является LZ77 семьей сжатия алгоритма . Это также имя файлового архиватора с таким же именем. Оба были изобретены Джонатаном Форбсом и Томи Поутаненом в 1990-х годах.
Примеры использования алгоритма LZX [ править ]
Amiga LZX [ править ]
LZX был публично выпущен как файловый архиватор Amiga в 1995 году, когда авторы учились в Университете Ватерлоо в Канаде . Программное обеспечение было условно-бесплатным , что было обычным явлением для программ сжатия в то время. Зарегистрированная версия содержала исправления и улучшения, недоступные в ознакомительной версии. В 1997 году авторы раздали бесплатный ключевой файл, который позволил любому использовать зарегистрированную версию, так как они прекратили работу с архиватором и перестали принимать регистрации.
Файлы Microsoft Cabinet [ править ]
В 1996 году Forbes начал работать в Microsoft , [1] и Microsoft, шкаф архиватор был расширен , чтобы включить метод сжатия LZX. Улучшения включали изменяемый размер окна поиска; Amiga LZX была установлена на 64 КБ, Microsoft LZX могла иметь значения степени двойки от 32 до 2048 килобайт (от 32 768 до 2 097 152 байта). Добавлен специальный препроцессор для обнаружения инструкций Intel 80x86 "CALL", конвертирующих их операнды.от относительной адресации к абсолютной, таким образом, вызовы одного и того же местоположения приводили к повторяющимся строкам, которые компрессор мог сопоставить, улучшая сжатие двоичного кода 80x86. (Этот метод позже будет обобщен как фильтрация Branch-Call-Jump [BCJ].)
Файлы сжатой справки Microsoft HTML (CHM) [ править ]
Когда Microsoft представила Microsoft Compressed HTML Help , замену их классическому формату файлов справки, они решили сжать все данные HTML с помощью алгоритма LZX. Однако, чтобы повысить скорость произвольного доступа, компрессор был изменен таким образом, чтобы он сбрасывался после каждых 64 килобайт (65 536 байтов) интервала и повторно выравнивался до 16-битной границы после каждых 32 килобайтных интервалов. Таким образом, программное обеспечение HTMLHelp могло немедленно искать ближайший интервал в 64 килобайта и начинать декодирование оттуда, а не всегда декодировать с начала сжатого потока данных.
Файлы Microsoft Reader (LIT) [ править ]
Файлы Microsoft LIT для Microsoft Reader являются просто расширением формата файлов CHM и, следовательно, также используют сжатие LZX.
Файлы Windows Imaging Format (WIM) [ править ]
Формат образов Windows, формат файла образа установки / диска для Windows Vista и Windows 7 , использует LZX в качестве одного из методов сжатия. [2]
Аватары Xbox Live [ править ]
Microsoft использует сжатие LZX для аватаров Xbox Live, чтобы снизить требования к диску и пропускной способности. [3]
Распаковка файлов LZX [ править ]
Программа unlzx и XAD могут распаковывать архивы Amiga LZX. Программа cabextract может распаковывать CAB- файлы Microsoft с помощью метода LZX. [4] Существует множество кроссплатформенных инструментов для декомпиляции или просмотра файлов CHM, как указано в статье CHM . LIT файлы могут быть распакованы с помощью Convert LIT программного обеспечения. [5]
См. Также [ править ]
- Список форматов архивов
- Сравнение файловых архиваторов
Ссылки [ править ]
- ^ http://www.linkedin.com/pub/jonathan-forbes/3/70a/a4b
- ^ "Архивная копия" . Архивировано из оригинала на 2006-08-19 . Проверено 19 августа 2006 .CS1 maint: archived copy as title (link)
- ^ http://www.xbox.com/en-US/live/engineeringblog/xbox-live-avatar-technology.htm
- ^ "cabextract: Бесплатное программное обеспечение для извлечения файлов кабинета Microsoft" . Дата обращения 17 марта 2020 .
- ^ «Преобразование файлов .LIT для развлечения и получения прибыли» . www.kyzer.me.uk .
Внешние ссылки [ править ]
- Страница LZX, включающая множество версий архиватора Amiga LZX
- исходный код unlzx
- cabextract (включает исходный код)
- wimlib (включая исходный код)
- Преобразование LIT (включая исходный код)
- Спецификация Microsoft LZX DELTA