Einzelnen Beitrag anzeigen

brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#43

Re: Warum PE-Packer sehr fragwürdig sind ...

  Alt 22. Jul 2005, 14:25
Ich persönlich habe nichts gegen irgendwelche Packer wenn sie halt "richtig" eingesetzt werden.
Und "richtig" versuh ich jetzt mal an einem Beispiel zu erklären.

Hat man zum Beispiel ein Programm wovon man üblicherweise mehrere Instanzen laufen hat (Internet Explorer) dann würde ich das Porgramm nicht packen. Die Speicherbenutzung summiert sich halt auf. Im Fall des Internet Explorers wäre das aber nicht weiter tragisch da die exe gerade mal 60kb groß ist (weiß net welche Version). Die wirkliche Speichernutzung für den Internet Explorer liegt aber nicht im Bereich des Porgrammcodes, dieser würde gepackt vielleicht gerade mal 200kb Speicher belegen. Der größte Teil wird durch die Bilder/Texte usw. belegt wenn man eine Seite besucht (11mb bei delphi-praxis). Der belgete speicher für den Programmcode ist Prozentual (2%) so klein, das man ruhig überlegen kann die exe zu packen. Aber da der IExplorer unzählige dlls benutzt, fällt der gewonnene Festplattenspeicher durch die packung nicht wirklich ins Gewicht.
Nehmen wir mal den Firefox, die exe ist 6MB groß, durch Packung kann man hier einiges einsparen. Und gewöhnlich hat man auch nur eine Instalz laufen. Durch bischen surfen im Netz und diesem Post schreiben hab ich jetzt schon 50mb Speichernutzung. Immerhin wäre der Programmcode dann ~10% vom ganzen Speicher. Hier ist es auch fraglich ob man die exe Packen sollte oder nicht.
Also perönlich würde ich daraus schließen das man unter 5% des Porgrammcodes im Speicher im Verhältnis zur ganzen Speichernutzung ruhig einen Packer benutzen _kann_.
Selber benutze ich eigentlich fast nie einen EXE-Packer es sei denn ich teste etwas. Weil ich sehe noch einen 3. Faktor neben RAM/Fesplatten - Speicherkosten. Und zwar die Zeit beim testen (übers Internet). Wenn man jemanden hat der halt nicht so fitt im Umgang mit dem PC ist, aber er halt Probleme mit der Software hat, dann mach ich das eigentlich so das ich halt - wenn ich meine ich hätte den Fehler behoben - ich ihm die neu kompilierte und gepackte exe schicke und er die alte ersetzen soll.
In dem Moment wo es nur ums testen geht, interessiert micht die Speichernutzung eigentlich relativ wenig. Ich will halt nicht übers inetnet 10MB verschicken, und auch dem Benutzer nicht zumuten erst ne zip zu entpacken. Da erfüllen UPX bzw jeder andere Packer sehr wohl ihren Zweck. Und zwar die Datei zu erkleinern damit ich nicht ewig daten durchs internet schicken muss.
Ob man nun "fertige" Programme packen muss, hängt halt immer von dem Programm ab. Ne Datenbankanwensung die z.b 1MB groß ist und mit Datenbanken arbeitet die mehrere 100mb groß sind, und diese voll in den Speicher lädt, dann ist der zusätliche 1MB mehr im speicher für die gepackte Exe nicht wirklich ein Nachteil. Sofern das Programm nicht üblicherweise über mehrere Instanzen läuft.
  Mit Zitat antworten Zitat