Ang mga archiver ay mga programa na maaaring mag-compress ng impormasyon sa mga file. Pinapayagan ka ng mga modernong archiver na pagsamahin ang maraming mga file sa isang archive at tingnan ang mga nilalaman ng naturang mga archive. Ang laki ng nilikha ng archive sa kanilang tulong ay naging mas maliit kaysa sa laki ng orihinal na file.
Panuto
Hakbang 1
Ang pangkalahatang prinsipyo ng pagpapatakbo ng karamihan sa mga archiver ay batay sa isang algorithm na binuo ng mga mananaliksik na A. Lampel at J. Ziv noong dekada 80 ng huling siglo. Ang algorithm na nilikha ng Ziv at Lampel ay nagbibigay-daan sa iyo upang makalkula ang dobleng code sa isang file at sa gayon ay mabawasan ang laki nito. Para sa mga ito, ang isang diksyunaryo ay naipon mula sa mga pagkakasunud-sunod ng data. Halimbawa, ang binary code ng file ay naglalaman ng sumusunod na kumbinasyon: 10111011101110110011. Madaling makita na ang code 1011 ay paulit-ulit na maraming beses dito. Nakita ng archiver ang ganoong code at isinulat ito sa archive nang isang beses lamang, at kapag inaalis ito, muling pinapalitan nito ang code sa mga kinakailangang lugar sa file.
Hakbang 2
Kung gaano kahusay idikdik ng archiver ang file ay nakasalalay sa laki ng pinagmulang diksyunaryo. Kung ang diksyunaryo ay masyadong malaki, makakaapekto ito sa laki ng archive. Kung ang laki ng diksyunaryo ay masyadong maliit, maaaring maganap ang mga error sa nilikha na archive. Maaari mong dagdagan ang ratio ng compression ng isang file gamit ang entropy coding (ang tinaguriang paraan ng Huffman). Sa pag-coding ng entropy, ang paulit-ulit na mga binary chunks ay nakasulat gamit ang isang shortcode. Sa mga modernong archiver, ang entropy coding ay ginagamit bilang isang karagdagang paraan ng pag-coding.
Hakbang 3
Sa mga system ng Unix, ang gzip ay ang pinakatanyag na archiver. Ang archiver na ito ay nag-compress ng data nang walang pagkawala at batay sa Deflate algorithm. Ang compression ng mga file dito ay nangyayari sa dalawang diskarte - una, ang mga duplicate na piraso ng code ay pinalitan, at pagkatapos ang mga character sa kanila ay pinalitan ng mga bagong character gamit ang pamamaraang Huffman. Ang mga archiver para sa mga system ng Unix ay may isang bilang ng mga disadvantages. Pangunahin silang naglalayon sa mga archive na binubuo ng maraming mga file, kaya't mahirap unzipping ang isang solong file. Ito ay dahil ang mga archive ng Unix ay tumingin ng isang archive bilang isang tuluy-tuloy na hanay ng lahat ng mga file na naka-pack dito. Ang archive ay nabuo batay sa impormasyong nilalaman sa bawat file.
Hakbang 4
Sa mga system ng Windows, ang mga naturang archiver bilang WinZip, 7-zip at WinRAR ay karaniwan. Hindi tulad ng mga system ng Unix, ang mga archiver na ito ay nakatuon sa pagtatrabaho kapwa sa mga indibidwal na file at may tuloy-tuloy na mga archive na binubuo ng maraming mga file. Karamihan sa mga modernong Windows archiver ay "nakakaunawa" ng maraming mga format ng archive, sumusuporta sa pag-encrypt at may kakayahang pag-compress ng napakalaking mga file (halimbawa, ang maximum na laki ng file para sa WinRAR archiver ay higit sa walong bilyong gigabytes).