Packer

Packer helfen die Datenmenge zu reduzieren, was z.B. bei Backups oder DFÜ wichtig ist. Eine ganze Reihe von Packern sind für die Atari ST-Serie erschienen.

In den letzten Jahren hat sich zwar auf dem Gebiet der Datenkomprimierung nicht sehr viel getan, aber das Thema bleibt nach wie vor aktuell. Wer im Internet auf FTP-Servern oder in einer Mailbox nach Programmen stöbert, wird sofort auf gepackte Dateien treffen. Der Grund dafür ist zum einen, das gepackte Dateien, die zu einem Archiv zusammengefasst werden, leichter zu übertragen sind. Der wichtigste Pluspunkt ist aber die geringere Datenmenge, die übertragen werden muss. Eine gepackte Datei kann schon mal die Hälfte an Zeit sparen, die sonst für die ungepackte Datei benötigt werden würde. Manche Dateien lassen sich nur schlecht packen, dazu gehören ST-Guide (.HYP) und JPEG-Dateien. Beide Dateitypen sind bereits gepackt und so verringert sich die Dateigröße beim erneuten Packen nur geringfügig.

Packer ist allerdings nicht gleich Packer. Außer den verschiedenen Kompressionsverfahren, auf die wir hier nicht näher eingehen wollen, kann man Packer in drei verschiedene Gruppen unterteilen:

  1. Komprimierer
  2. Archivierer
  3. spezialisierte Packer

Daneben gibt es auch noch einige Exoten, auf die am Ende dieses Artikels eingegangen wird. Wichtig sind bei einem guten Packer sowohl die Kompressionsrate als auch die benötigte Zeit zum Packen oder Entpacken.

Komprimierer

Unter Komprimierern versteht man Packer, welche die Programmgröße zwar reduzieren, aber wobei das eigentliche Programm ausführbar bleibt.

Der Vorteil ist, dass das Programm weniger Platz auf der Festplatte wegnimmt, dafür muss man allerdings einige Sekunden Wartezeit in Kauf nehmen, da ein Komprimierer ein kleines Programm an die komprimierte Datei ranhängt, das für das Entpacken zuständig ist. Manche Komprimierer kopieren auch ein kleines Entpack-Programm in den Auto-Ordner. Der Speicherplatzverbrauch sinkt allerdings nicht mit der Programmlänge. Der eingesparte Platz auf der Festplatte hängt zum einen von der Qualität des Komprimierers ab, zum anderen aber auch vom Programm selber. Bei letzterem lässt sich leider keine allgemeine Regel aufstellen, so dass man von Programm zu Programm ausprobieren muss, ob sich das lohnt. Ein zusätzliches Kriterium kommt bei den Komprimieren allerdings hinzu, welches sonst vor allem bei Emulatoren relevant ist: Kompatibilität. Ein negatives Beispiel ist hier der Turbo-Packer der Zeitschrift TOS (Ausgabe 10/90): Sein Entpack-Programm für den Auto-Ordner ist nicht kompatibel mit dem Falcon. Die mit diesem Packer gepackten Programme muss man dann notgedrungen auf einem alten ST entpacken. Außerdem vertragen es viele Programme nicht, wenn sie Komprimiert werden. Die Vertreter der Gilde der Komprimierer, die untersucht werden sollen, sind: Atomik 3.5, Ice-Packer und Jam-Packer.

Alle drei Programme sind TOS-spezifisch, d.h. es gibt keine Amiga- oder Macintosh-Versionen dieser Packer. Bevor man einen Komprimierer benutzt, sollte man sich sicher sein, dass man noch Sicherheitskopien der Programme hat, die man komprimieren will.

Jam-Packer

Lautlos, aber dafür mit Mausbedienung präsentiert sich der Jam-Packer. Zwar ist die GEM-Einbindung alles andere als vorbildlich und auch nicht ganz sauber, aber es reicht, um das Programm bequem bedienen zu können. Im Eingangsdialog kann man denn auch die Komprimierungsart und einiges mehr anwählen; für den Test wurde es jedoch bei den Voreinstellungen belassen.

Da die Komprimierer vor allem für ausführbare Programme gedacht sind, wurde Jam-Packer auf vier zufällig ausgewählte Programme losgelassen: Crackart (Malprogramm), UDO 5, Webspace 1.45 und Zaptastic (Spiel).

Die Programme sind zwischen 120 und 280 KByte lang und wurden vom Jam-Packer erfolgreich komprimiert. Bis auf Crackart ist die Programmlänge auch bei allen Programmen um etwa 50 Prozent gesunken. Der Kompatibilitätstest fiel dann jedoch nicht sehr positiv aus: UDO und Webspace stürzten ab. Nur Zaptastic lief einwandfrei. Ob es nun an den beiden Programmen lag, am Entpacker oder an den Voreinstellungen konnte nicht herausgefunden werden.

Atomik 3.5

In der Benutzerführung präsentiert sich Atomik spartanisch und ohne GEM-Einbindung, die Bedienung erfolgt mit den Funktionstasten.

Lobenswerterweise bietet Atomik eine Funktion an, komprimierte Programme wieder in den Ursprungszustand zurück zu versetzen. Auch Atomik wurde auf vier Programme losgelassen und erzielte bei UDO, Webspace und Zaptastic minimal bessere Komprimierungszahlen als Jam-Packer. Bei Crackart wurde jedoch mit der Begründung abgebrochen, das sich das Komprimieren nicht lohnen würde. Beim Kompatibilitätstest war Atomik allerdings ein Totalausfall: Alle Programme stürzten ab.

Dies muss man natürlich auch wieder insofern relativieren, dass dies an der Programmauswahl liegen könnte.

Ice-Packer

Der letzte Vertreter der Komprimierungsprogramme ist der Ice-Packer: Dieser präsentiert sich hauptsächlich durch Alert- und Dateiauswahlboxen. Auffallend ist die geringe Programmlänge des Komprimierers (knapp 7 KByte), der wohl mit sich selber gepackt wurde.

Ice-Packer bricht - wie auch Atomik - das Packen von Crackart mit der Begründung ab, dass die komprimierte Version länger werden würde als das Original. Crackart scheint also ein schlechter Kandidat zum Komprimieren zu sein. Die anderen drei Programme wurden problemlos komprimiert, wenn auch nicht mit ganz so guten Kompressionsraten wie die anderen Komprimierer. Den Kompatibilitätstest bestand der Ice-Packer mit Bravour: Alle Programme liefen ohne Probleme.

Archivierer

Weitaus bekannter als die Komprimierer dürften die Archivierer sein. Archivierer fassen Dateien in einem komprimierten Archiv zusammen.

Dieses Archiv muss entpackt werden, bevor die darin enthaltenen Programme ausgeführt werden können. Da die Programme nach dem Entpacken wieder in ihrem Ursprungszustand sind, entstehen auch im Normalfall keine Kompatibilitätsprogramme. Da Archivierer besonders zum Datenaustausch mit anderen Systemen gedacht sind, haben sich im laufe der Zeit einige Standard-Packer entwickelt, während andere langsam in Vergessenheit geraten. Ein Großteil der Archivierer sind übrigens TTP-Dateien - Shells, die eine bequeme Mausbedienung ermöglichen, gibt es allerdings wie Sand am Meer. Die wichtigsten Archivierer sind:

ARC

Inzwischen längst veralteter Packer: Die Kompressionsraten und die Geschwindigkeit sind nicht mehr zeitgemäß. Gelegentlich trifft man aber noch auf ein ARC-Archiv (Endung: .ARC).

ZOO

Für ZOO gilt das gleiche wie für ARC, jedoch sind die Kompressionsraten etwas besser. ZOO-Archive findet man vor allem bei Dateien aus dem MiNT/MultiTOS-Bereich.

TAR, GZ, TGZ, TAR.GZ

Im Unix-Bereich sehr wichtig und auch heute noch üblich. Wer allerdings weder mit Linux/NetBSD oder mit MiNT arbeitet, wird auf diese Archive kaum treffen.

ARJ

Zu den modernen Packern gehört ARJ, denn es wird noch heute weiterentwickelt. An der Atari-Version, die sich immer noch im Beta-Stadium befindet, wird schon seit einiger Zeit fleißig weiterentwickelt.

LZH

LZH-Archive werden vom Programm LHarc erzeugt und waren lange Zeit der Standard auf dem Atari.

ZIP

ZIP-Archive werden vom Packer gleichen Namens geschrieben und sind zur Zeit der Standard auf Atari- und MS-DOS-Rechnern (Mac und Amiga tanzen da etwas aus der Reihe).

Die drei letzten Packer sollen etwas genauer untersucht werden.

LHarc

center

Für den Test wurde die LHarc-Shell verwendet, die konsequent in GEM eingebunden ist, so das man sich nicht mit Kommandozeilen herumschlagen muss. Die GEM-Einbindung ist tatsächlich so gut, dass das Arbeiten mit diesem Programm richtig Freude macht. Optisch ansprechend zeigt das Programm an, wieviel schon gepackt wurde und wie der Fortschritt beim Packen der gerade aktuellen Datei ist. Der Test für LHarc (und ST-Zip) bestand darin, ein Verzeichnis voller Programme und Resource-Dateien zu packen. Danach wurde das Archiv wieder entpackt.

Das gleiche wurde auch mit einem Ordner voller Sound-Dateien im ARV-Format gemacht. Sowohl beim Packen als auch beim Entpacken ist LHarc angenehm schnell, jedoch beim Packen ein ganzes Stück langsamer als ST-Zip. Beim Entpacken wird ST-Zip jedoch deutlich abgehängt. Die Kompressionsrate war beim ersten Test nicht so gut wie bei ST-Zip, beim zweiten etwas besser. Die Unterschiede sind aber so gering, dass sie bei der DFÜ oder dem Datentransport nicht großartig ins Gewicht fallen.

Fazit: Die Shell hat die mit Abstand schönste Benutzeroberfläche - aufgrund der etwas schlechteren Geschwindigkeit kommt LHarc knapp hinter ST-Zip.

ST-Zip

Auch bei ST-Zip wurde auf die ST-Zip-Shell zurückgegriffen, es existiert aber auch - wie bei LHarc und ARJ - eine kommandozeilen-orientierte Version. Die GEM-Einbindung ist zwar nicht ganz so schön wie bei LHarc, jedoch sauber und multitasking-freundlich. Erfreulicherweise ist die grundlegende Bedienung beider Shells ungefähr gleich, so das eine Umgewöhnung entfällt. Die Pack-Zeiten, die von ST-Zip erzielt wurden, sind besser als bei LHarc. Ein besonderer Bonus kommt ST-Zip noch insofern zu, als das es der weitverbreiteste Packer ist. Ein Zip-Programm findet sich fast auf jedem Computer, was man von LHarc nicht mehr behaupten kann.
Fazit: ST-Zip ist immer noch der ausgewogenste Packer, was Geschwindigkeit/Komprimierung betrifft.

ARJ

Zu den "Newcomern", obwohl auch schon einige Jahre alt, gehört ARJ.

Auf MS-DOS-Rechnern hat sich das Programm zumindest eine kleine Nische erobert. Die gerade erschienene neue Version von ARJ enthält endlich auch eine Shell, so dass man sich nicht mit Kommandozeilen rumärgern muss, bloß um ein Archiv zu entpacken. Lobenswert ist die Anlehnung an ST-Zip und LHarc, zumindest was das Aussehen der Shell betrifft. Am Funktionsumfang sieht man allerdings, dass es sich hier um eine Beta-Version handelt. Die Benutzeroberfläche ist aber Multitaskingfreundlich und kann komplett mit der Tastatur bedient werden.
Wie auch bei ST-Zip und LHarc wurde der Packer auf "Beste Komprimierung" eingestellt. Leider liegt ARJ geschwindigkeitsmäßig sowohl beim (Ent-)Packen weit zurück. Den einzigen Vorteil konnte ARJ bei den Sound-Dateien erzielen, denn die wurden besser gepackt als von den beiden Kontrahenten.
Fazit: ARJ ist auf den besten Wege, eine Konkurrenz zu den beiden etablierten Packern zu werden.

Selbstextrahierende Archive

LHarc, ST-Zip und einige andere Programme können selbstextrahierende Archive erzeugen. Diese Archive haben meistens die Endung TOS und für das Entpacken ist nicht ein Packer, sondern nur ein Doppelklick auf die Datei nötig. Es ist aber weiterhin möglich, dieses Archiv mit dem entsprechenden Packer zu bearbeiten, jedoch muss dann erneut ein selbstextrahierendes Archiv erzeugt werden. Bei der Erzeugung eines solchen Archives wird ein Entpackprogramm mit eingebunden. Ein selbstextrahierendes Archiv vom PC (Endung: .EXE) kann man übrigens auch mit einem ST-Packer bearbeiten, jedoch kann man die EXE-Datei nicht wieder abspeichern.

Spezialisierte Packer

Diese Packer haben sich auf ein Gebiet spezialisiert, z.B. die Bildkomprimierung. Auf diesem Gebiet gab es in letzter Zeit einige Weiterentwicklungen, z.B. die fraktale Bildkompression, die die Dateilänge auf bis zu 1/50 der ursprünglichen Größe reduzieren kann bei verbesserter Schärfe (im Vergleich mit JPEG). Leider gibt es bis heute noch kein Anzeigeprogramm für den Atari, das mit der fraktalen Bildkompression etwas anfangen kann.
An spezialisierten Packern sollen der Magic Shadow Archiver und Splitter erläutert werden.

Magic Shadow Archiver

MSA hat sich auf Disketten spezialisiert, d.h es wird immer der komplette Disketteninhalt in ein Archiv gepackt. Das ist aber noch nicht alles: Im Archiv stehen auch Informationen über die Diskette, u.a. Anzahl der Sektoren. Damit eignet sich der MSA vor allem für Programme, die Disketten voraussetzen, die in einem Spezial-Format formatiert wurden (dies sind z.B. Demos oder einige Diskettenmagazine). MSA besitzt eine GEM-Einbindung, so dass das Packen und Entpacken sehr leicht vor sich geht. Mittlerweile ist dieser Archivierer auch nicht mehr ganz TOS-spezifisch: Ein Programm für PCs, das MSA-Archive in das spezielle ST-Format für den ST-Emulator PaCifiST umwandelt, existiert mittlerweile.

Splitter

Es gibt inzwischen verschiedene Splitter für den Atari, die zwar teilweise die gleiche Zielsetzung wie Packer haben (einfacherer Datentransport), aber nicht im eigentlichen Sinne zu ihnen gehören.
Splitter-Programme komprimieren nämlich nicht - sie "spalten" die ausgewählte Datei in zwei oder mehr Stücke, so dass man das Programm per Diskette auf einen anderen Rechner transportieren kann, wo ein anderes Programm diese Teile wieder zu der ursprünglichen Datei zusammenfügt. Aus letzterem Grund sollte der verwendete Splitter auf mehreren Plattformen existieren. Da keine Komprimierung stattfindet, ist ein Splitter im Normalfall erheblich schneller als ein Packer.

Exoten

Zu den Exoten zählt man die Packer, die sich nicht durchsetzen konnten, darunter u.a. BOB und RAR. Letzteres könnte sich zum Standard entwickeln, jedoch muss die Atari-Version noch an den aktuellen RAR-Stand angepasst werden. HDP-Stack ist kein Exot im eigentlichen Sinne, passt jedoch nicht ganz in die drei Kategorien rein, da es ein Festplattentreiber mit eingebauter Komprimierung ist. Das Programm wurde allerdings schon in der Atari-Inside genauer vorgestellt.

Ausblick in die Zukunft

Bisher ist noch keine Ablösung für das Zip-Format in Sicht, jedoch gibt es eine neue Art von Zip-Packern (im Moment nur für Windows 95).
Diese neue Variante klinkt sich in den Explorer (der Datei-Manager von Win 95) ein und sorgt dafür, dass man mit Zip-Archiven wie mit normalen Disketten arbeiten kann. Entpackt wird das Archiv schnell in ein temporäres Verzeichnis, das (hoffentlich) nach dem Verlassen des Programms gelöscht wird. Eine Lösung auf dem Atari müsste mit einem alternativen Desktop und einem Multitasking-Betriebssystem auch möglich sein.

Anmerkung:
Einige der in diesem Artikel vorgestellten Programme finden Sie in unserer PD-Liste.

Programm-Dateien:

ZeitDateigrößeZeit (entpacken)
Original-878345-
ST-Zip1:16,59 416774 (52,6%)0:15,00
LHarc1:45,84 425705 (48,4%)0:12,17
ARJ2:39,07 489584 0:24,16

Sound-Dateien
36 AVR-Sound-Dateien, insgesamt 705334 Bytes.

ZeitDateigrößeZeit (entpacken)
Original - 705334-
ST-ZIP 1:13,35 4299790:23,01
LHarc 1:28,12 4280020:16,84
ARJ 2:39,92 4151680:42,73

Executable packer

OriginalIce-PackerAtomik 3.5Jam-Packer
Crackart198402**192245**
UDO5259616132186123010**125589**
Webspace1225186829463550**66053**
Zaptastic (Spiel)279809138980**132988138532


Aus: ST-Computer 06 / 1997, Seite 24

Links

Copyright-Bestimmungen: siehe Über diese Seite