Przejdź do zawartości

gzip

Z Wikipedii, wolnej encyklopedii
gzip
Logo gzip
Logo programu
Ilustracja
Zrzut ekranu z wersji 1.3.6 –
pomoc wyświetlona w wierszu polecenia
Pierwsze wydanie wersja 0.1 –
31.10.1992
wersja 1.0 –
luty 1993
Aktualna wersja stabilna 1.13
(19 sierpnia 2023) [±]
Język programowania C
Platforma sprzętowa wieloplatformowy
Rodzaj bezstratna kompresja danych
Licencja GNU GPL
Strona internetowa

gzip (GNU zip) – program komputerowy służący do bezstratnej kompresji danych, tworzony w ramach projektu GNU.

Historia

[edytuj | edytuj kod]

Pierwotnie został napisany jako zamiennik dla programu compress, który cieszy się popularnością zwłaszcza w systemach typu Unix, gdzie jest często używany do kompresji archiwów tar. Pliki wyjściowe programu gzip zwykle mają domyślnie rozszerzenie .gz.

Gzip oparty jest o algorytm deflate, który jest kombinacją algorytmu LZ77 i kodowania Huffmana. Algorytm deflate powstał w odpowiedzi na opatentowanie LZW i innych algorytmów kompresji. Jak poinformował Jean-loup Gailly(inne języki), jeden z autorów programu, poświęcił on więcej czasu na studiowanie patentów niż na opracowanie i zaprogramowanie tego algorytmu.

Zastosowania

[edytuj | edytuj kod]

Format kompresji danych zlib, algorytm deflate oraz format plików gzip zostały ustandaryzowane w następujących dokumentach RFC 1950[1], RFC 1951[2] i RFC 1952[3]. Standardy te wykorzystuje m.in. format graficzny PNG.

W celu przyspieszenia rozwoju oprogramowania wykorzystującego kompresję została stworzona (przez autorów gzip) biblioteka zlib. Obsługuje ona format plików gzipa oraz algorytm kompresji deflate. Biblioteka ta jest bardzo szeroko stosowana ze względu na niewielki rozmiar oraz efektywność działania.

Oprogramowanie dla systemów Unix jest często rozpowszechniane w plikach o nazwie zakończonej .tar.gz lub .tgz, zwanych tarbalami (ang. tarball). Są to pakiety utworzone programem tar, które potem zostały skompresowane gzipem. Mogą zostać zdekompresowane poleceniem gzip -d plik.tar.gz lub rozpakowane przez tar xzf file.tar.gz. W postaci tgz są rozpowszechniane m.in. pakiety instalacyjne dystrybucji Slackware oraz polskiego KateOS.

Gzip a inne programy kompresujące

[edytuj | edytuj kod]

Gzip nie powinien być mylony z Zipem, z którym nie jest zgodny. Gzip nie archiwizuje plików, a jedynie je kompresuje. W celu archiwizacji plików musi zostać użyty inny program (np. tar) i dopiero powstałe archiwum jest kompresowane gzipem.

Pod koniec lat 90. XX wieku można było zauważyć przechodzenie z gzip na bzip2, który pozwala mocniej kompresować dane w wielu przypadkach, ale jest też znacząco wolniejszy.

AdvanceCOMP implementuje algorytm deflate w sposób, który pozwala przepakować pliki .gz do rozmiaru mniejszego, niż jest to w stanie zrobić gzip. Podobnie algorytm ulepsza implementacja programu PNGOUT.

Zobacz też

[edytuj | edytuj kod]

Przypisy

[edytuj | edytuj kod]
  1. P. Deutsch, J-L. Gailly, ZLIB Compressed Data Format Specification version 3.3, RFC 1950, IETF, maj 1996, DOI10.17487/RFC1950, ISSN 2070-1721, OCLC 943595667 (ang.).
  2. P. Deutsch, DEFLATE Compressed Data Format Specification version 1.3, RFC 1951, IETF, maj 1996, DOI10.17487/RFC1951, ISSN 2070-1721, OCLC 943595667 (ang.).
  3. P. Deutsch, GZIP file format specification version 4.3, RFC 1952, IETF, maj 1996, DOI10.17487/RFC1952, ISSN 2070-1721, OCLC 943595667 (ang.).

Linki zewnętrzne

[edytuj | edytuj kod]