LZMA

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

LZMA (zkratka pro Lempel-Ziv-Markov-Chain Algorithm) je bezeztrátový kompresní algoritmus vyvinutý programátorem Igorem Pavlovem pro jeho archivační program 7-Zip. Jedná se o vylepšení známého algoritmu „Deflate“ a skládá se z LZ77 („Lempel-Ziv 77“, publikovaný v roce 1977), Markovových řetězců (algoritmus vyvinutý již dávno, původně nesouvisející s kompresí dat) a „Range“ algoritmu.

Detailní popis není k dispozici, jediným zdrojem informací je zdrojový kód v „C++“ projektu 7-Zip (MS Visual C++ compiler) a „p7zip“ (GCC compiler), a zjednodušená ANSI-C verze dekompresního kódu. LZMA poskytuje v mnoha případech (ale ne všech) výrazně lepší kompresi než Deflate, cenou za to je pomalejší práce a značná spotřeba paměti. +more Zvláštností LZMA oproti mnoha algoritmům je, že při kompresi vyžaduje mnohonásobek velikosti slovníku, v závislosti na nastavení parametrů komprese, pro „default“ více než 10krát. Velikost slovníku je teoreticky neomezená, pro 32bitové procesory x86 vychází maximum 256MB slovník pro počítač se 4 GB RAM. Dekomprese je výrazně „levnější“, stačí o něco více paměti než velikost slovníku, a také je mnohonásobně rychlejší než komprese.

Související články

7-Zip * LZW

Externí odkazy

LZMA SDK: http://www.7-zip.org/sdk.html

Kategorie:Kompresní algoritmy

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top