GZIP proti BZIP2
GNU zip (znan tudi kot GZIP) je programska aplikacija z namenom stiskanja datotek. Prvotno je bil namenjen nadomestitvi programa stiskanja, ki je bil uporabljen v zgodnjih sistemih Unix - uporabljati se bo v projektu GNU (brezplačni program).
BZIP2 je odprtokodni algoritem stiskanja podatkov brez izgub - v bistvu je razred algoritmov stiskanja podatkov, ki omogoča, da se izvirni podatki stisnjene datoteke v celoti rekonstruirajo iz stisnjenih podatkov.
GZIP temelji na algoritmu, znanem kot DEFLATE. To je tudi algoritem stiskanja podatkov brez izgub. Uporablja algoritem LZ77 in kodiranje Huffmana. GZIP se v bistvu nanaša na istoimensko obliko datoteke. Ta oblika je 10-bajtna glava, ki vsebuje čarobno številko (kar pomeni številčno ali besedilno vrednost, ki se nikoli ne spreminja in se uporablja za označevanje datoteke ali protokola, neimenovano numerično vrednost, ki se nikoli ne spreminja, ali ločene vrednosti, ki jih ni mogoče zmotiti za karkoli drugega), dodatne glave, ki so morda ali morda dejansko niso potrebne (na primer prvotno ime datoteke), telo, ki vsebuje DEFLATE-komprimirano koristno obremenitev (ki so podatki, ki jo nosijo glave), in 8-bajtno podnožje ki vsebuje kontrolno vsoto CRC-32, pa tudi dejansko dolžino izvirnih nestisnjenih podatkov.
Obstaja različne tehnike stiskanja, ki jih uporablja format BZIP2, ki so zloženi drug na drugega v več plasteh. Pojavijo se v zelo izrazitem vrstnem redu: kodiranje dolžine teka (ki je poljubno zaporedje štirih do 255 podvojenih simbolov, ki jih nadomestijo prvi štirje simboli, in dolžina kodiranja, ki se ponovi med 0 in 251), transformacija Burrows-Wheeler ( ki je reverzibilna vrsta blokov, ki tvori samo jedro BZIP2), premakni se naprej (pusti velikost obdelanega bloka nespremenjena), kodiranje po dolžini (ki ga sestavljajo dolgi nizi simbolov - običajno ničle), ki nenehno ponovite v izhodu in jih nadomestita tako simbol kot zaporedje dveh kod), Huffmanovo kodiranje (to je postopek, ki nadomešča simbole s fiksno dolžino 8-bitnih bajtov s kodami spreminjajoče se dolžine), večkratno Hoffmanovo kodiranje (ki je sestavljeno iz več Hoffmanovih tabel enake velikosti), Unary base 1 encoding, Delta kodiranje in Sparse bit array.
Povzetek:
1. GZIP je brezplačna aplikacija, ki se uporablja za stiskanje datotek; BZIP2 je odprtokodni algoritem stiskanja podatkov brez izgub, ki omogoča pridobivanje izvirnih podatkov stisnjene datoteke.
2. GZIP je sestavljen iz 10-bajtne glave, neobveznih glav, telesa in 8-bajtnega podnožja; BZIP2 je sestavljen iz manj kot devetih plasti tehnik stiskanja.