3 月 20 日消息,消息源 @ntauthority 近日分享了一个有趣的事情,微软 Windows 11 24H2 原生支持解压 Zstandard 算法的 .7z 文件,但是当前稳定版 7-Zip 应用并不支持。
导致这个有趣情况的主要原因是,Windows 11 整合了 libarchive 3.7.2 库,而 libarchive 3.7 版本中已添加对 Zstandard 压缩算法的支持。
而处理 .7z 的应用 7-Zip 目前稳定版停留在 2023 年 6 月发布的 23.01 版本更新中,而主流版本目前并未添加该功能。
7-Zip 在今年 1 月 31 日发布的 24.01 Beta 版本中,添加了对 Zstandard 压缩算法的初步支持,但目前并未推广到稳定版。
注:Zstd 全称叫 Zstandard,是一个提供高压缩比的快速压缩算法,主要实现的编程语言为 C,是 Facebook 的 Yann Collet 于 2016 年发布的,Zstd 采用了有限状态熵(Finite State Entropy,缩写为 FSE)编码器。
该编码器是由 Jarek Duda 基于 ANS 理论开发的一种新型熵编码器,提供了非常强大的压缩速度 / 压缩率的折中方案(事实上也的确做到了“鱼”和“熊掌”兼得)。
7-Zip 表示,并不会完全使用 Facebook 的代码:
7-Zip 不使用 https://github.com/facebook/zstd 上的原始 Zstandard (ZSTD) 代码
7-Zip 代码虽然能实现类似的功能,但实现方式并不相同。因此,7-Zip 在代码和性能上都可能存在其他错误。