Интернет магазин китайских планшетных компьютеров



Компьютеры - UPX

01 июня 2011


Оглавление:
1. UPX
2. Используемые алгоритмы



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

Описание

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

Преимущества и недостатки

Упаковка исполняемого файла позволяет уменьшить занимаемое программным обеспечением место.

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

Самым весомым и неоспоримым преимуществом является ускорение считывания и запуск сжатых файлов с носителей информации, помимо высвобождения дополнительного свободного пространства на внешних накопителях информации. К сожалению, на сегодняшний день все внешние накопители информации всё также остаются самыми медленными узлами современных вычислительных систем, «тормозящими» быстродействие системы в целом, как и на заре вычислительных технологий. Поэтому нельзя не оценить эффект, возникающий при системном применении упаковщиков исполняемых файлов, таких, как UPX. Вычислительная система затрачивает на порядок меньше времени на считывание и распаковку сжатого файла в оперативной памяти, нежели на простое считывание этого же, неупакованного файла.



Просмотров: 1118


<<< Rip (компьютерные игры)
VoIP >>>