Гзип је формат датотеке и софтверска апликација коришћена за компресију и декомпресију датотека. Програм су креирали Жан лу Гели () и Марк Адлер () као бесплатну замену програмима за компресију коришћеним на раним Јуникс системима, и наменили га за употребу у ГНУ пројекту („г“ у називу произилази из „ГНУ“). Верзија 0.1 издата је 31. октобра 1992. године, а верзија 1.0 у фебруару 1993. године.
Формат датотеке Гзип је базиран на DEFLATE алгоритму, који је комбинација ЛЗ77 и Хафмановог кодирања. DEFLATE је био намењен као замена за LZW и друге алгоритме за компресију података, који су били ограничени правима о патентима, и, у дато време, ограничавали употребу компресора.
Израз „гзип“ се често користи и када се говори о гзип формату датотеке који је:
10-бајтно заглавље које садржи "магични број" (1f 8b), број верзије и датум опционално додатна заглавља, нпр. оригинални назив датотеке тело, које садржи битне информације () компресоване DEFLATE алгоритмом 8-бајтно подножје, у коме се налазе -{CRC-32}- вредност и дужина оригиналних некомпресованих података, по модулу 232.
Иако формат датотеке дозвољава вишеструким улазима да се ланчају (зиповане датотеке се једноставно декомпресују уланчане као да су оригинално биле једна датотека), гзип се обично користи само за компресовање појединачних датотека. Компресоване архиве се обично праве скупљањем колекција датотека у једну tar архиву, која се затим компресује гзип-ом. Тако добијена датотека има екстензију или , и назива се "-{tarball}-".
Гзип не треба мешати са ЗИП форматом архивирања, који такође користи DEFLATE. ЗИП формат може садржати колекције датотека без екстерног архиватора, али је мање компактна него компресовани -{tarball}--ови који садрже исте податке, зато што компресује датотеке појединачно и не може да искористи сувишност међу датотекама.
Имплементације
Написане су разне имплементације овог програма, а најпознатија је имплементација ГНУ пројекта која користи Лампел-Зив кодирање (ЛЗ77). -{OpenBSD}--ова верзија гзип-а је заправо програм за компресовање коме је додата подршка за гзип формат у верзији -{OpenBSD}- 3.4. Слово 'г' у овој конкретној верзији представља реч гратис. -{FreeBSD}-, ДрагонФлај BSD и -{NetBSD}-, уместо ГНУ верзије, користе BSD лиценцирану имплементацију која је заправо интерфејс командне линије који је требало да буде компатибилан са опцијама ГНУ имплементације. Ове имплементације су оригинално настале од -{NetBSD}- и подржавају декомпресију бзип2 као и јуникс-ово пакет форматирање.
Деривати и остале употребе Алатка тар, коју садржи већина Линукс дистрибуција, може екстраховати -{.tar.gz}- датотеке помоћу опције , нпр. .
Злиб је апстракција -{DEFLATE}- алгоритма у облику библиотеке која, између осталог, укључује подршку и за гзип формат у свом АПИ-ју. Злиб, -{DEFLATE}- и гзип формати су стандардизовани редом у , , и .
Гзип формат се користи у HTTP компресији која се користи за брже слање -{HTML}--а и осталих садржаја веба. То је један од три стандардна формата за HTTP компресију како је наведено у . Овај -{RFC}- (, Захтев за коментар) такође наводи и злиб формат (тзв. -{DEFLATE}-) који је једнак гзип формату осим што гзип додаје једанаест додатних бајтова. Ипак, гзип формат се понекад више препоручује од злиб-а јер Мајкрософт Интернет експлорер не имплементира стандард исправно и не може да обради злиб формат како је наведено у .
Од краја 1990-их, бзип2 (алатка за компресију датотека заснована на блок-сортирајућем алгоритму) је стекла мало популарности као замена за гзип. Производи значајно мање датотеке (посебно за изворни код и остале структуиране текстове), али по цену меморије и времена за обраду (до фактора 4).7-zip vs bzip2 vs gzip
-{AdvanceCOMP}- и 7-Зип могу да производе гзип-компатибилне датотеке, користећи уграђену -{DEFLATE}- имплементацију са бољом компресијом од самог гзип-а, али по цену већег коришћења процесорског времена у односу на реферисану имплементацију.
Референце
Референце
– GZIP file format specification version 4.3
Спољашње везе ГНУ Гзип почетна страна Оригинална гзип почетна страна
Категорија:Формати архивских фајлова Категорија:Вишеплатформски софтвер Категорија:Бесплатни софтвер програмиран у Ц-у