Kompression ausführbarer Programmdateien ist die Kompression einer ausführbaren Datei und das Kombinieren der komprimierten Daten mit dem zum Entpacken nötigen Code in einer einzigen ausführbaren Datei. Der ursprüngliche Grund ist es Reverse Engineering zu behindern und die Erkennung von Schadprogrammen (durch Antivirussoftware) zu umgehen durch den Einsatz proprietärer Methoden und/oder zusätzlicher Verschlüsselung.
Bei der Ausführung wird die ursprüngliche Programmdatei automatisch im Arbeitsspeicher entpackt und ihr dann die Kontrolle zu übertragen. Sie verhalten sich also wie herkömmliche Programmdateien, für den Nutzer besteht kein sichtbarer Unterschied zu unkomprimierten Pendants. Eine komprimierte Programmdatei benötigt
Komprimierte ausführbare Dateien stellen einen besonderen Fall selbstextrahierender Archive dar, in dem die komprimierten Daten selbst eine ausführbare Datei sind.
Es gibt Programme zum Entpacken gepackter Programmdateien ohne sie auszuführen, namentlich CUP386 und UNP.
Bei den meisten Verfahren entpacken die gepackten Dateien direkt in den Arbeitsspeicher und benötigen keinen freien Speicher im Dateisystem um zu starten, bei manchen ist dieses Verhalten jedoch bekannt.
Extrembeispiele selbstentpackender Programmdateien finden sich in der Demoszene. Manche Kompressoren wie MuCruncher, kkrunchy und 624 wurden extra für Demos mit Größenbegrenzung entworfen. Ein extremes Beispiel ist Crinkler, der für 4096 byte-Intros geschaffen wurde und aufgrund der Kompressionszeiten und des Speicherverbrauches unbrauchbar ist für sehr viel größere Dateien.
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Kompression ausführbarer Programmdateien".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world