Linux 6.2 内核合并了新的 Zstd 实现


基于 Zstd v1.5 上游的新 Zstd 内核实现已合并到正在开发的 Linux 6.2 中,以便为从压缩固件到透明文件系统压缩的 Zstd 压缩/解压缩用例提供更好的性能和可靠性。

Linux 内核已在多个模块使用了 Zstd,从透明文件系统压缩与 Btrfs 之类的数据压缩,到允许内核模块使用 Zstandard 算法进行压缩。

据称,Linux 内核中的 Zstd 代码已经有一年没有更新了,使用的还是 Zstd 1.4.10,这比上游 Zstd 的更新进度晚了好几年。在 Linux 6.2 中,Zstd 内核代码已针对 v1.5.2 上游进行了更新,以便与 Facebook/Meta 维护的上游代码保持一致。对于使用 Zstandard 压缩算法的内核用户,这意味着他们能够使用更快的 Zstd 压缩/解压缩。

这项计划很早之前就已被提出,维护者最后在上周末才提交了 PR。就在今天,Linus Torvalds 合并了该补丁。该 PR 依旧是由来自 Facebook 的 Zstd 维护者 Nick Terrell 完成,他一直积极从上游为 Linux 内核使用的 Zstd 更新代码。

毫无疑问,使用新的 Zstd 实现能够为 Zstd 压缩的内核镜像和其他用户带来更好的性能。随着这个内核实现也以近乎自动的方式从上游 Zstd 代码生成,希望内核实现能够更好地针对其上游进行更新。


相關推薦

2022-10-28

各种 Linux 内核组件都在使用 Zstandard(Zstd) 压缩算法,但内核中的 Zstd 代码远落后于上游,上一次更新内核中的 Zstd 代码还要追溯到一年前的 Linux 5.16,,当时将 Zstd 升级到 1.4.10。从 Linux 5.16 发布以后,Zstd 维护者 Nick Terrell 就积

2023-11-24

根据Phoronix的报道,Linux 6.8内核计划在明年升级其Zstd代码,以提供更好的压缩性能。 在Linux 6.2中,内核的Zstd压缩/解压缩代码已经根据Zstd 1.5的最新状态进行了更新。而在Linux 6.8内核中,计划升级到Zstd 1.5.5版本,这将提供更好

2022-12-23

ZRAM 是内核的内存优化模块,先划定一片区域,然后将压缩过后的硬盘数据放入该区域,以实现高速读取。目前 Linux 6.2 已合并 ZRAM 中对多个压缩流的支持 ,作为内存管理相关补丁的一部分。 Google 工程师一直致力于实现 ZRAM 中

2022-12-13

Rust 代码,据外媒 Phoronix 报道,负责 Rust For Linux 部分的内核开发者 Miguel Ojeda 已经向 Linux 6.2 合并窗口发出了一个新 PR,提供一批新的 Rust 基础代码。 与 Linux 6.1 中的 Rust 支持类似,Linux 6.2 的 Rust 代码继续对 Rust 的内核构建提

2023-04-01

,此版本基于Ubuntu 22.04.2 LTS(Jammy Jellyfish),并由 Linux 内核 5.15 LTS 提供支持,为内部应用程序引入 Zstd(Zstandard)压缩,大大提高解压缩速度 另一个有趣的变化是通过在 Lite System Report 应用程序中实施 systemd-analyze ,从而添加

2022-11-23

速器子系统(Accelerator Subsystem)一直处于争论状态,部分内核开发者应该针对该计算加速器开发新的子系统、部分开发者则认为它应当是 DRM 的子系统或其他子系统的一部分。 而在今年的 LPC 大会中,上游开发人员终于对如何处

2022-12-21

尔在 2020 年初次对外展示 LAM,从那以后一直致力于 Linux 内核支持。11月中旬,英特尔工程师为 Linux 6.2 的 x86/mm 分支提交了大量补丁,希望将该功能代码合并到内核中。 然而,LAM 随即遭受了 Linus 的猛烈批评,不仅是内核实现

2022-12-09

打开之前的早期拉取请求中,有一项更改是默认为 Linux 内核构建启用“-funsigned-char”,这意味着如果没有指定,“-funsigned-char”编译器标志会将所有“char”字符类型设为无符号。 C 的 char 字符数据类型分为 signed char 和 unsigned

2022-12-26

,进入此发布周期的测试和错误修复阶段。 对于新的内核版本,Linus Torvalds 在6.2-rc1 公告中写道: 6.2 看起来像是一个更大的版本(肯定比 6.1 更大)。在这个合并窗口中,我们总共有大约 1800 人提交了大约 13.5k 次提交,这

2022-11-30

Linus 近日对内核维护者表示,由于项目的开发周期节奏将与即将到来的圣诞夜产生冲突,维护者要确保在假期之前完成他们的开发工作。 Linus 在刚刚过去的周末发布了 Linux 6.1-rc7。他在邮件中表示,本以为感恩节会影响内核的

2022-11-17

使用 Clang 构建的 Linux 内核在 5.8 版本中已支持 ShadowCallStack (SCS)。ShadowCallStack 是一种 LLVM 插桩模式,可将函数的返回地址保存到非叶函数的函数 prolog 中单独分配的 ShadowCallStack,并从函数 epilog 中的 ShadowCallStack 加载返回

2022-12-16

inux 6.2 近日合并了一个重要补丁,该补丁能够将一个核心内核函数速度提升 715 倍。 从合并的注释可知,贡献此补丁的维护者 Zhen Lei 来自华为,他将 kallsyms_lookup_name() 的平均查找性能提高了 715 倍,从而使内核里面旧实现的时

2023-02-06

Linus Torvalds 已发布 Linux 6.2 的第七个 RC 版本,稳定版本的内核预计将在两周后发布。 rc7 是一个相当轻松的一周,由于过去的圣诞节假期混在 6.2 版本的合并时间,使一些早期内核测试延迟了,因此 Torvalds 表示他将通过 -rc8 版

2022-11-14

施已被合并到 Linux 6.1 。意味着未来 Rust 编程语言将用于内核驱动程序和其他子系统的代码。但 10 月的 Rust for Linux 只提供了底层的基础设施和一些非常基础的集成,缺少很多规范和子系统抽象。 近日,领导 Rust for Linux 工作的 M