XZ-Utils | |
---|---|
Kehityshistoria | |
Vakaa versio | 5.6.4 ()[1] |
Tiedot | |
Lisenssi | GNU Lesser General Public License, versio 2.1 tai myöhempi |
Aiheesta muualla | |
Verkkosivusto | |
Versiohallinta |
XZ Utils (aiemmin LZMA Utils) on paketti avoimen lähdekoodin pakkausohjelmia. Pakettiin kuuluvat ohjelmat ovat lzma ja sen seuraaja xz. Ohjelmat ovat lähinnä Unix- ja Linux-käyttöjärjestelmiin suunnattuja komentoriviohjelmia, jotka toimivat kuten Unixin compress tai gzip tai bzip2. Ohjelmat pakkaavat vain yhden tiedoston tai vuon, joten sille voi putkittaa esim. tar-arkistointiohjelman tulostuksen, joka pakataan ja tallennetaan tiedostoon.
XZ Utils perustuu Igor Pavlovin kehittämälle LZMA Utilsille, jota käytettiin aluksi 7-Zipin 7z-pakkauksessa. LZMA Utils alkoi Unix-versiona Pavlovin LZMA-SDK:sta Tukaani-projektin yhteydessä. xz:n algoritmina on nykyisin LZMA2, jota tallennetaan xz-kuoreen. Pakkaukselle luvataan jopa 30% parempi pakkaussuhde kuin gzipille ja 15% parempi kuin bzip2:lle.[2] Pavlovin mukaan LZMA on hänen kehittämänsä yhdistelmä LZ77-algoritmia, Markovin ketjuja ja aritmeettista koodausta.[3]
Eräässä kokeessa linux-lähdekoodipaketti pakkautui suurimmilla asetuksilla gzip:llä 21% tilaan, bzip2:lla 16,6% tilaan ja xz:llä 13,9% tilaan. xz:llä pakkaus vie jopa 9 kertaa enemmän aikaa kuin gzipillä.[4] Lisäksi xz:n muistinkäyttö vaihtelee muutamasta sadasta kilotavusta jopa gigatavuihin.[5]