CAB (souborový formát)

CAB ([kæb]; z angl. cabinet [ˈkæbinit]; česky skříňka) je v softwarových produktech firmy Microsoft nativně používaný kompresní algoritmus pro instalační balíčky a současně přípona souboru pro tímto algoritmem vzniklé archivy. Formát, jehož soubory Microsoft nenazývá archivy, nýbrž balíčky, je využíván na instalačních médiích jeho operačních systémů i aplikací.

Algoritmus je optimalizován pro co nejúčinnější kompresi souborů obsahujících strojový kód (spustitelných souborů a samostatných knihoven), ale velmi dobrých výsledků dosahuje také v případě textových souborů; o poznání horší výstupy zaznamenává stran multimediálního obsahu. Přestože se jedná o proprietární technologii, metoda komprese a dekomprese není obchodním tajemstvím – byla zveřejněna.

Vlastnosti

Z důvodu zachování zpětné kompatibility do již vytvořeného archivu nelze přidávat další soubory – pro změnu obsahu je nutné celý archiv vytvořit znovu. I proto – jelikož rozšiřování obsahu je typickou vlastností archivů – Microsoft tyto soubory jako archivy neoznačuje (jinou příčinou je přizpůsobení terminologii užívané konkurenčními operačními systémy a programy, konkrétně názvosloví linuxových distribucí).[pozn. 1]

Balíček může být rozprostřen přes více souborů.[pozn. 2]

Algoritmus nepodporuje šifrování.

Podpora

Každá verze systému Windows ve své standardní výbavě disponuje prostředky, jimiž lze k obsahu .cab souboru přistupovat – bez ohledu na to, zda tyto nástroje zpřístupňuje uživateli.[pozn. 3] V novějších verzích ke komprimovaným souborům uživatel může přistoupit prostřednictvím výchozího správce souborů, kterým je shell Průzkumník – archivy lze otevírat jako složky. Alternativu představuje systémový nástroj msconfig.

Jako příklady programů třetích stran[pozn. 4] pro práci s formátem .cab je možno jmenovat PowerArchiver nebo Cab File Maker; obě tyto aplikace balíčky dokáží vytvářet i rozbalovat.

Historie

Algoritmus byl využíván již v systémech MS-DOS (předchůdce MS Windows), ale jeho výstupy se neukládaly do souborů s příponou .cab. V prostředí MS-DOSu platilo, že v jednom archivu byl obsažen pouze jeden komprimovaný soubor, a jmenná konvence byla taková, že archiv (tehdy ne balíček) se jmenoval jako pojmutý soubor s tím, že místo třetího (posledního) znaku přípony měl znak podtržítka.

Archivy s jedním souborem a příponou končící podtržítkem se extrahovaly programem expand, jenž patřil do základní výbavy DOSu. Program se standardně volal se dvěma parametry: prvním byl název archivu, druhým jméno souboru, do něhož se měl zapsat výstup.[pozn. 5] Utilita expand.exe byla pevnou součástí softwarového vybavení operačních systémů firmy Microsoft od MS-DOSu verze 5.0 do Windows Millenium Edition.

Jiné významy

Přípona .cab je používána taktéž jinými vývojáři softwaru než společností Microsoft; obvyklé je to u tvůrců počítačových her. Proto se může stát, že se najde soubor s touto příponou, jejž nástrojem pro práci s formátem .cab firmy Microsoft nebude možné zpracovat, ačkoli tento soubor bude konzistentní.

Související články

Odkazy

Poznámky

  1. Ve srovnání s linuxovými instalačním balíčky v souborech .cab nejsou zahrnuty instalační instrukce – tyto obsahují pouze data pro instalaci.
  2. Smyslem je umožnit pohodlný přenos archivu i tehdy, když jeho velikost přesáhne kapacitu k tomuto účelu použitého média.
  3. Navzdory tomu, že CAB je dílo Microsoftu, oficiální archivační metoda v Microsoft Windows je ZIP, a to od Windows 98 Second Edition. Je však třeba uvést, že oficiální kompresní algoritmus by měl být přenositelný mezi platformami, a připomenout, že CAB je optimalizován pro kompresi strojového kódu, zatímco oficiálnímu kompresnímu algoritmu podléhají data všeho druhu.
  4. Programy třetích stran jsou programy, jež k práci s daným formátem dat nejsou schváleny jeho tvůrcem, resp. správcem.
  5. Vzhledem k počtu různých běžně užívaných přípon a tomu, že komprimovány byly zpravidla binární soubory s příponami .com, .dll a .exe, nebylo obtížné si znak chybějící v názvu souboru domyslet.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.