Archivář

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 21. července 2020; kontroly vyžadují 13 úprav .

Archivátor  je program určený pro bezztrátové zabalení jednoho nebo více souborů do jednoho archivního souboru nebo do řady archivů pro snadný přenos a/nebo ukládání dat. Archivy se rozbalují pomocí stejného archivátoru nebo kompatibilních nástrojů třetích stran. Většina moderních archivátorů také komprimuje data balená do archivu.

Funkce a charakteristiky

Nejjednodušší archivátory jednoduše sekvenčně sloučí (zabalí) obsah souborů do archivu, který kromě dat souboru obsahuje informace o jménech a velikostech původních souborů, takže soubory lze přesně obnovit do původní podoby. Většina archivátorů proto také ukládá metadata souborů poskytovaná operačním systémem , jako je čas vytvoření a oprávnění. Tuto funkcionalitu implementuje tar  , standardní archivátor pro systémy typu UNIX . Pokud je nutné zmenšit velikost archivu tar, je bezztrátově komprimován pomocí programů gzip , bzip2 atd. Většina moderních archivátorů aplikací používá kompresi při práci s výchozím nastavením [1] .

Mnoho archivátorů umožňuje zadat další parametry, z nichž nejdůležitější ovlivňují stupeň a rychlost komprese. Tyto charakteristiky jsou nepřímo závislé veličiny. To znamená, že čím vyšší je rychlost balení, tím nižší je kompresní poměr a naopak. Pokud jde o rychlost dekomprese, většina moderních archivátorů používá tzv. asymetrické kompresní algoritmy, u kterých rychlost (a stupeň) komprimace nemá prakticky žádný vliv na rychlost dekomprese, která je obvykle mnohem vyšší.

Většina archivátorů má funkci kontroly integrity dat uložených v archivu. K tomu se při přidávání souborů do archivu zadávají informace o jejich kontrolních součtech. Při rozbalování (nebo testování) archivu se nutně vypočítá kontrolní součet každého extrahovaného souboru, a pokud neodpovídá součtu uloženému v archivu, zobrazí se chybové hlášení. Archivátory tedy poskytují velmi důležitou funkci, o které se mnohým ani nezdá: záruka integrity dat. Některé archivátory (například RAR) navíc disponují funkcemi ochrany archivů před fyzickým poškozením nebo dokonce úplnou ztrátou jednotlivých svazků vícesvazkových archivů, takže archiv lze považovat nejen za prostředek pro ukládání dat, ale také za jejich uvedení do původní podoby v případě poškození. .

Některé archivátory umožňují vytvářet tzv. vícesvazkové archivy, to znamená archivy skládající se z několika částí určité nebo různé velikosti. Takové archivy se pohodlně používají pro přenos velkého množství dat na menších médiích (například na flash discích nebo optických discích) a pro výměnu dat přes internet, kdy je praktičtější přenášet místo jednoho velkého archivu více menších souborů. V různých archivátorech je multivolume implementován různými způsoby. Například ve formátech ZIP a 7Z jsou svazky ve skutečnosti jen zdrojovým archivem rozděleným na několik částí, což přináší určitá omezení pro jejich použití, zatímco svazky vícesvazkových archivů RAR jsou téměř kompletními archivy.

Řada archivátorů má další funkci vytváření samorozbalovacích (SFX) archivů. Takové archivy jsou spustitelné soubory, které k rozbalení nevyžadují žádné další programy – stačí spustit archiv SFX a ten extrahuje všechna data, která obsahuje. To se hodí, když potřebujete archiv přenést někomu jinému, ale nemáte jistotu, že bude mít příslušný archivátor. Archiv SFX je ve skutečnosti běžný archiv, ke kterému je připojen rozbalovací spustitelný soubor, takže archivy SFX mohou být zpracovány externím archivátorem jako normální archivy (například kvůli obavě, že by spustitelný soubor mohl být infikován virem). Archivy SFX vytvořené některými archivátory mohou být vícesvazkové, v takovém případě má první svazek formát spustitelného souboru a všechny následující mají standardní formát svazku.

Poměr komprese dat

Komprese souboru závisí na algoritmu používaném archivátorem a na povaze dat obsažených v souborech. Textové soubory se komprimují velmi dobře, binární soubory bývají horší a soubory, jejichž obsah je již maximálně zkomprimován (například audio a video soubory, stejně jako instalační programy), se nekomprimují vůbec.

Najít pro jakýkoli vstupní soubor algoritmus s nejmenší možnou výstupní velikostí je algoritmicky neřešitelný problém .

Pokud je do archivu zabaleno mnoho souborů s podobnou datovou strukturou, pak některé archivátory (například RAR a 7-Zip) umožňují získat výrazně menší archivy pomocí tzv. kontinuální (pevné) komprese. Při této kompresi se se všemi příchozími soubory zachází jako s jedním nepřetržitým proudem dat, pro který se používá jeden společný slovník, takže lze dosáhnout velmi vysokého celkového kompresního poměru. Zároveň je třeba mít na paměti nevýhody „nepřetržitých“ archivů: jejich aktualizace trvá déle; pro rozbalení souboru na konci archivu je třeba rozbalit všechny soubory před ním; v případě poškození bude možné extrahovat pouze soubory, které jdou do archivu před poškozeným souborem.

Poznámky

  1. ComputerPress 03'2013. Sergej Pakhomov. Porovnání 64bitových archivátorů WinRAR 4.2, WinZip 17.0 a 7-Zip 9.30. Sekce "Testovací metody" . Získáno 30. července 2018. Archivováno z originálu dne 23. března 2018.

Literatura

Odkazy