Главная :: Утилиты :: the Ultimate Packer for eXecutables (UPX)
"Ну и запросы у вас..." - сказала база данных и повисла.

the Ultimate Packer for eXecutables (UPX)

Название программы: UPX

Версия: 3.04

Язык: английский

Размер: Архив 350 Кб (zip архив)

Состав: программа установки

Платформа: Windows, GNU/Linux

Лицензия: Бесплатная (freeware)

Издатель: upx.sourceforge.net

Описание

UPX (the Ultimate Packer for eXecutables) — упаковщик исполняемых файлов, поддерживающий несколько различных платформ и форматов файлов. Является свободным и открытым программным обеспечением, и распространяется по лицензии GNU GPL

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

Упаковка исполняемого файла позволяет уменьшить занимаемое программным обеспечением место (что может быть критично в случае передачи через сети или выпуске ПО на носителе ограниченной ёмкости).

Использование сегментов в памяти (в операционных системах Windows) не позволяет операционной системе высвобождать сегменты исполняемого кода без выгрузки содержимого в файл подкачки (что, фактически, увеличивает требования программы к оперативной памяти), процесс распаковки занимает некоторое время и замедляет запуск программы. Некоторые программы не способны работать в сжатом виде, так как используют малодокументированные (или недокументированные) возможности операционной системы по работе с исполняемыми файлами. В случае распаковки во временный файл (unix-подобные системы) программа теряет возможность использовать argv[0], статус suid бита игнорируется.

UPX использует алгоритм сжатия без потерь, называющийся UCL (свободная реализация алгоритма NRV (англ. Not Really Vanished).

UCL-декомпрессор достаточно прост, чтобы быть реализованным в нескольих сотнях байт, и при работе не требует выделения дополнительной памяти.

Следующая значительная версия UPX (3.0) также использует алгоритм LZMA на 32/64 битных платформах.

Поддерживаемые форматы:

Ссылки