Hogyan működik archiváló

Az általános elv a legtöbb archiváló alapul egy algoritmus, hogy a 80-as években a múlt század kutatói kifejlesztettek Lampel A. és J. Ziv. Alkotó Ziv és Lampela algoritmus kiszámítja az ismétlődő kódot egy fájlba, és így csökkenti a méretét. Ehhez összeállított szótára adatsorok. Például egy bináris kód fájlban a következő kombinációt: 10111011101110110011. Könnyen belátható, hogy a kód 1011 többször megismételjük azt. Archiváló észleli ezt a kódot, és kiírja a fájl csak egyszer, és amikor újra kicsomagolni beilleszti a kódot a kívánt helyre a fájlt.

Milyen jól fogja tömöríteni archív fájlt, attól függően, hogy a kezdeti mérete szótárban. Ha a szótár túl nagy, ez hatással lesz a fájl mérete. Ha a méret a szótárban túl kicsi lesz - a létrehozott archívum hibákat okozhat. Növelése tömörítési arány révén lehetőség van az entrópia kódolás (pl Huffman módszer). Amikor entrópiakódolás ismétlődő bináris bitek segítségével rögzíti a rövid kódot. A modern archivers entrópiakódolást használható további kódolási módszer.

Unix-alapú rendszerek, a legnépszerűbb a archiváló gzip. Ez tömöríti az adatgyűjtő veszteség nélkül, és alapjául Deflate algoritmus. Fájltömörítés folyik kétféle módon - először, helyébe ismétlődő darabokat kódot, majd a karakterek bennük helyébe új szimbólumok Huffman. Archivators Unix rendszerek számos hátránya van. Ezek középpontjában elsősorban a levéltári álló több fájlt, így csomagold ki egy fájlt nehéz. Ez azért van, mert a Unix-archiváló archív úgy, mint a folyamatos tömb adatok minden csomagolva a fájlokat. Archív képződik alapján szereplő információk minden fájlt.

A Windows-alapú rendszerek közös archivers, mint a WinZip, 7-zip és WinRAR. Ellentétben Unix-alapú rendszerek, az archiváló tervezték, hogy külön fájlokat, és folyamatos archív álló több fájlt. A legtöbb modern Windows archiváló „megérteni” a sok tömörített formátumok támogatása titkosítási és képesek csomagolni nagyon nagy fájlokat (például a maximális fájlméretet WinRAR archiváló több mint nyolc milliárd gigabájt).