知方号

知方号

关于lzma、xz和7z的一些概念 <7zip算法>

算法:LZMA(Lempel-Ziv-Markov chain-Algorithm)是Igor Pavlov为7-Zip发明的压缩算法。LZMA2算法是LZMA算法的升级版,修正了一些问题。文件格式:

.lzma、.7z和.xz分别是三种文件格式的后缀名,它们对应三种不同的文件结构。文件结构相当于容器,把LZMA算法压缩后的数据包装起来,然后添加上魔术字、校验码、压缩元信息、文件夹结构等信息。

.xz和.lzma一样,只能压缩一个文件。它们需要和打包工具tar一起使用才能把多个文件压缩成一个文件。而.7z这种更复杂的文件结构可以包含多个文件或文件夹的压缩数据。

由于.xz的压缩元信息存储在头部,而压缩数据存储在元信息后面,所以.xz格式可以支持流式解压缩。相反,.7z把压缩元信息存储在尾部,而压缩数据在元信息的前面,所以.7z不适合流式解压缩。

应用程序:7-Zip是最早的项目,它是windows上类似winrar的一个软件。作者把7-Zip的部分代码开源出来成为LZMA SDK。7-Zip软件支持的文件格式较多,包括默认的.7z以及.lzma和.xz。p7zip是7-Zip移植到 POSIX-like 系统(比如Linux)上的命令行软件。LZMA Utils是 POSIX-like 系统上的另一个命令行软件。它基于LZMA SDK开发,只支持.lzma格式。XZ Utils是LZMA Utils的继承者。支持.xz和.lzma格式。xz和gzip的性能对比:

用xz和gzip对文

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。

上一篇 没有了

下一篇没有了