bzip2
| |
---|---|
Basisdaten
| |
Entwickler | Julian Seward |
Erscheinungsjahr | 18. Juli 1996 |
Aktuelle Version | 1.0.8[1] (13. Juli 2019) |
Betriebssystem | Linux/Unix, Windows |
Programmiersprache | C |
Kategorie | Packprogramm |
Lizenz | BSD-ähnlich |
deutschsprachig | nein |
sourceware.org/bzip2/ |
BZip2 | |
---|---|
Dateiendung: | .bz2
|
MIME-Type: | application/x-bzip
|
Magische Zahl: | 42 5A 68 hex BZh (String) |
Entwickelt von: | Julian Seward |
Erstveröffentlichung: | 1996 |
Aktuelle Version | 1.0.8[1] (13. Juli 2019) |
Art: | Datenkompression |
sourceware.org/bzip2/ | |
bzip2 ist ein freies Komprimierungsprogramm zur verlustfreien Kompression von Dateien, entwickelt von Julian Seward. Es ist frei von jeglichen patentierten Algorithmen und wird unter einer BSD-ähnlichen Lizenz vertrieben.
Bzip2 komprimiert Daten in einem dreistufigen Verfahren: Zuerst werden die Eingangsdaten blockweise mit der umkehrbaren Burrows-Wheeler-Transformation sortiert. Das Ergebnis wird dann einer Move-to-Front-Transformation unterzogen. Deren Ergebnis wird dann schließlich einer Huffman-Kodierung unterzogen, die die eigentliche Datenkompression vornimmt.
Die Kompression mit bzip2 ist oft effektiver, aber meist erheblich langsamer als die Kompression mit gzip oder rar. Seit 2003 existiert jedoch auch die Variante pbzip2, die Multi-Threading beherrscht und auf aktuellen Mehrkernprozessoren erheblich schneller ist. pbzip zerlegt hierfür den Eingabedatenstrom in mehrere einzelne Ströme, welche separat komprimiert werden. Das Ergebnis ist eine Datei, welche die konkatenierten Bzip-Ströme enthält.
Mit bzip2 komprimierte Dateien werden durch die Dateiendung .bz2 gekennzeichnet. tar-Dateien, die mit bzip2 komprimiert wurden, haben üblicherweise die Erweiterung .tar.bz2 oder .tbz2. Ein Vorteil solcher mit bzip2 komprimierter tar-Dateien ist, dass sich bei Lesefehlern oder Beschädigungen alle noch lesbaren Blöcke mittels bzip2recover herauskopieren und anschließend entpacken lassen, während andere Kompressionsverfahren nach einem Lesefehler nicht weiterarbeiten können.
bzip2 ist der Nachfolger von bzip, das ursprünglich arithmetisches Kodieren nach dem Blocksort benutzte; aus patentrechtlichen Gründen wurde bzip jedoch nicht mehr weiterentwickelt.