Reasons why not to use UPX (and other executable compressors
Moderators: Hacker, petermad, Stefan2, white
-
- Junior Member
- Posts: 3
- Joined: 2005-06-20, 19:57 UTC
Reasons why not to use UPX (and other executable compressors
Reasons why not to use UPX (and other executable compressors).
- more ram usage
- lower performance
- whole code of programm is loaded, not on demand
- it doesn't allow to share memory so code is loaded to memory more than one time
Can I count that next version of TC would be released without compression?
- more ram usage
- lower performance
- whole code of programm is loaded, not on demand
- it doesn't allow to share memory so code is loaded to memory more than one time
Can I count that next version of TC would be released without compression?
Well, I would not bet on it.
Yet, as for different reasons - some of which were mentioned by you - people need TC uncompressed, here is the link to the uncompressed TC 6.53 executable:
https://plugins.ghisler.com/img/unpack32_653.exe
You may have a look at the complete thread where I got the link from here:
http://ghisler.ch/board/viewtopic.php?t=6634&highlight=uncompressed
Karl
Yet, as for different reasons - some of which were mentioned by you - people need TC uncompressed, here is the link to the uncompressed TC 6.53 executable:
https://plugins.ghisler.com/img/unpack32_653.exe
You may have a look at the complete thread where I got the link from here:
http://ghisler.ch/board/viewtopic.php?t=6634&highlight=uncompressed
Karl
MX Linux 21.3 64-bit xfce, Total Commander 11.50 64-bit
The people of Alderaan keep on bravely fighting back the clone warriors sent out by the unscrupulous Sith Lord Palpatine.
The Prophet's Song
The people of Alderaan keep on bravely fighting back the clone warriors sent out by the unscrupulous Sith Lord Palpatine.
The Prophet's Song
2slashbeast
Not in all cases.- more ram usage
What kind of performance do you mean? Starting the program? Then you have to consider time for harddisk reading and time for unpacking.- lower performance
Only if a program use such techniques.- whole code of programm is loaded, not on demand
Only important if you start multiple instances.- it doesn't allow to share memory so code is loaded to memory more than one time
The doorstep to the temple of wisdom is a knowledge of our own ignorance. Benjamin Franklin
It's possible - it's only a question of your installer.You cannot distribute files with NTFS compression.
You cannot use NTFS compression on FAT32 (or other FS).What are the (dis-)advantages of using the compression provided by NTFS
That's the big disadvantage:beside the fact that the NTFS compression doesn't result in very small files
TC V6.53
Uncompressed: 2.320.420 Bytes
NTFS: 1.622.016 Bytes
ZIP(TC): 1.101.824 Bytes
UPX: 837.156 Byte
7z (Ultra): 757.685 Bytes (EDIT)
Maybe a 7z-based installer (e.g. Inno-Setup) will be create a smaller installation file.
The doorstep to the temple of wisdom is a knowledge of our own ignorance. Benjamin Franklin
When not?nevidimka wrote:2slashbeastNot in all cases.- more ram usage
No. The original post (which I mostly agree with, even though the impact probably won't be that big) is refering to Windows memory management. Windows itself loads only the needed parts (on-demand) of the executable into memory. With the compressed executable, the whole file is loaded and unpacked there.nevidimka wrote:Only if a program use such techniques.- whole code of programm is loaded, not on demand
Besides, when a piece of the code is not used for a longer time, Windows may decide the swap it out. For uncompressed executable, it may simply discard (forget) the block - it can reload it from the file when needed. For compressed executable, it has to write it into the swap file first - because there's nowhere to reload it from.
2Hacker
2nevidimka
I know all this. I mean are there other disadvantages? Imagine the conclusion would be that UPX is really bad in memory usage, performance, loading speed or whatever. Would it be a good decision to use this compression instead of the completely uncompressed executable?
I'm sorry I think this thread is about executing UPX compressed files not about these files in installers. In installers the compression ratio/less overhead combination - or better - the resulting size is critical.You cannot distribute files with NTFS compression.
2nevidimka
I know all this. I mean are there other disadvantages? Imagine the conclusion would be that UPX is really bad in memory usage, performance, loading speed or whatever. Would it be a good decision to use this compression instead of the completely uncompressed executable?