Dabar populiaru
Pažymėkite klaidą tekste, pele prispaudę kairijį pelės klavišą

Išskleidžiame paslaptį: kaip veikia „zip“ failų suspaudimas

„Zip“ archyvas
123rf nuotr. / „Zip“ archyvas
Šaltinis: 15min
0
A A

Jei kada nors siuntėte el. laišką, įkėlėte ar atsisiuntėte kelis didelius failus ar programas, veikiausiai teko susidurti su suspaustais (arba suarchyvuotais) „zip“ failais.

Į „zip“ failą galima suspausti daug dokumentų sumažinant bendrą jų užimamą vietą ir palengvinant (bei pagreitinant) jų persiuntimą, rašo Mashable.com.

Šį suspaudimo būdą 1986 metais sugalvojo Phillipas Katzas. Jis pirmą kartą buvo pritaikytas programoje „PKZip“. Ilgainiui P.Katzo sugalvotas suspaudimo metodas išpopuliarėjo, o dabar populiariausios operacinės sistemos „Windows“ bei „MacOS“ net turi vidinius įskiepius „zip“ failams sukurti ir išskleisti.

Kaip veikia ši technologija? Kokių magiškų galių reikia, kad failas užimtų mažiau vietos, bet neprarastų saugomos informacijos?

Ši magija tėra gana paprastas algoritmas, išskaidantis dokumentą į mažesnes dalis, jas surūšiuojantis ir atsikratantis to, ko nereikia.

Supaprastintam pavyzdžiui panaudosime tokį sakinį: „Nėra ugnies be dūmų, nėra dūmų be ugnies“. Sakykime, tai yra dokumentas, kurį reikia suspausti.

Kiekvienas žodis sakinyje panaudojamas du kartus. Jei kiekviena raidė ir tarpai sudarytų vieną atminties vienetą, tuomet visas sakinys užimtų 40 tokių vienetų.

Jei sukurtume sunumeruotą kodą – arba savotišką žodyną – šiam sakiniui, jis atrodytų taip:

  1. Nėra
  2. ugnies
  3. be
  4. dūmų

O visą sakinį būtų galima iššifruoti taip: 1 2 3 4; 1 4 3 2. Tokiu atveju šis sakinys jau užimtų 16 atminties vienetų (pats „žodynas“ saugomas kitame faile, kurį programa naudoja atlikdama suspaudimo ar išskleidimo veiksmą).

Tai vadinama „suspaudimu nepatiriant nuostolių“ (angl. lossless compression) – išsaugoma visa originalaus failo informacija. Tokiu principu veikia archyvavimo programos, tiesa, jų darbas yra kiek labiau komplikuotas – jos suranda ir atpažįsta dažnai pasikartojančius mažesnius šablonus ir naudoja kur kas ilgesnį „žodyną“. Taigi ji gali atrasti kur kas efektyvesnį būdą suspausti dokumentus.

Įvairių tipų dokumentuose dažnai naudojami pasikartojantys šablonai. Tačiau failų suspaudimo santykis priklauso ne tik nuo dokumento pobūdžio, dydžio, bet ir to, kaip programa nusprendžia jį suglaudinti.

Tarkime, nuotraukas ar „mp3“ failus sudaro daugiau unikalios informacijos, kurioje sudėtinga rasti šablonų. Tokiu atveju galima naudoti „nuostolingą suspaudimą“ (angl. lossy compression) – archyvavimo programos atsikrato informacijos, kurią jos laiko nesvarbia.

Pavyzdžiui, jei turite nuotrauką, kurios nemažą dalį sudaro mėlynas dangus, archyvavimo programa gali pasirinkti kelis dažniausiai pasitaikančius melsvus atspalvius ir juos naudoti visame mėlyname plote. Jei sistema suveiks tinkamai, gali būti, kad pokyčiai bus nė nepastebimi, tačiau nuotraukos dydis gerokai sumažės.

Šio suspaudimo būdo problema ta, kad išskleidę failą turėsite nebe originalų dokumentą. Taigi jis negali būti naudojamas tokiais atvejais, kai būtina išskleisti visą originalią informaciją (pvz., archyvuojant tekstus, duomenų bazes, programas ir kt.).

Pažymėkite klaidą tekste, pele prispaudę kairijį pelės klavišą
Pranešti klaidą

Pranešti klaidą

Sėkmingai išsiųsta

Dėkojame už praneštą klaidą
Sužinokite daugiau
Parašykite atsiliepimą apie Mokslas.IT