LWN《Rust 内核实验的情况》
文章报道了在 2025 年 Linux 内核维护者峰会(Linux Kernel Maintainers Summit) 上的一场关于 Rust 语言在内核中地位的关键讨论。
1. 核心结论:实验宣告成功
- 背景: 当 Rust 最初被引入 Linux 内核(约在 6.1 版本)时,它被明确标记为一个“实验”。当时的约定是,如果 Rust 造成了太大的麻烦或者没有带来预期的价值,它可能会被移除。
- 决议: 在本次峰会上,维护者们达成共识,认为这个实验已经成功。Rust 不会被移除,它已经成为内核永久的一部分。
2. 讨论的背景与现状
- 不可逆转性: 讨论指出,目前已经有越来越多的驱动程序和子系统(如 Apple AGX 图形驱动等)开始依赖 Rust。移除 Rust 将会导致这些硬件支持失效,因此“移除”在实际上已不再是一个可选项。
- 心态转变: 社区需要从“这是一个可能会消失的实验”的心态,转变为“这是内核基础设施的一部分”的心态。
3. 挑战与摩擦 (痛点) 文章也坦诚地讨论了过程中遇到的问题:
- 社会/文化摩擦: C 语言维护者与 Rust 开发者之间存在显著的紧张关系。一些 C 维护者感到被强加了额外的工作负担,或者对必须学习 Rust 感到不满。
- 工具链问题: Rust 编译器版本的快速迭代与内核对稳定性的极高要求之间存在冲突。
- 技术细节: 讨论了具体的技术障碍,例如
bindgen(用于生成 C-Rust 绑定的工具)的复杂性,以及如何在 Rust 的内存安全模型与内核现有的 C 代码模式之间建立抽象。
4. 未来展望
- 既然 Rust 确定留下,未来的重点将不再是争论“是否应该使用 Rust”,而是如何改进集成流程,减少不同语言开发者之间的摩擦,并完善基础设施以支持混合语言的内核开发。
简而言之: 这篇文章确认了 Rust 在 Linux 内核中的正式地位,标志着 Linux 内核开发正式进入了 C 和 Rust 共存的混合语言时代,尽管在文化融合和工具链配合上仍有许多工作要做。
阅读:https://lwn.net/SubscriberLink/1050174/63aa7da43214c3ce/
Linebender 11 月进展
Linebender 是一个致力于为 Rust 语言推进 GUI 技术发展的开源组织。
在 2025 年 11 月不仅发布了多个核心库(Parley, Kurbo)的新版本,还在渲染特效(Vello)和 GUI 框架的实用性(Xilem)上迈出了重要一步,同时获得了持续发展的资金保障。以下是本次更新的核心亮点:
- 核心渲染器 Vello Vello 是该组织的 GPU 矢量渲染器,本月迎来了重要功能更新:
- 新增图像滤镜(CPU端): 支持高斯模糊(Gaussian Blur)、投影(Drop Shadow)和泛洪(Flood)效果。
- 性能与算法优化: 引入了针对非图层裁剪的新算法,并优化了 CPU 端的渐变渲染。
- GUI 框架 Xilem 与 Masonry Xilem(旗舰声明式 GUI 项目)和 Masonry(底层 Widget 系统)进展迅速:
- 功能增强: 新增了
ResizeObserver(检测组件尺寸变化)、Passthrough组件,以及对文本输入和复选框的尺寸配置支持。 - 架构改进: 实现了所有 Widget 的高效子节点替换,并重构了核心模块结构。
- 应用案例: Eli Heuer 正在将 Runebender(字体编辑器)从旧的 Druid 框架移植到 Xilem 上,取得了显著进展。
- 文本布局库 Parley
- 版本发布: 发布了 Parley 0.7.0。
- 关键更新: 优化了行高计算,引入 Unicode 数据以准备迁移到 ICU4X,并改进了字间距控制。
- 资金支持: 获得了来自 NLnet 的两项资助,用于支持 2026 年的开发工作。
- 基础库更新
- Kurbo (曲线算法库): 发布了 0.13.0 版本。最引人注目的是
CubicBez::nearest算法通过切换到poly-cool五次方程求解器,实现了 3000 倍 的速度提升。 - Fearless SIMD: 增强了 x86 架构下的 AVX2 支持,修复了浮点/整数转换的边界情况(如 NaN 处理),并利用了原生指令集优化数据加载。
- Velato (Lottie 动画渲染): 修复了大量渲染问题(如关键帧插值、蒙版层、路径修剪),目标是支持更复杂的 Lottie 动画。
- 生态集成
- Bevy Vello: 更新适配了 Bevy 0.17 游戏引擎,修复了视口变化时的渲染目标调整问题。
阅读:https://linebender.org/blog/tmil-23/
Rust 形式化兴趣组议题分享:Soteria Rust
12 月的 RFMIG 分享的主题是 Soteria Rust,它是第一个完全支持对 Rust 语言复杂的别名模型(树借用)进行推理的 Rust 符号执行引擎,同时其性能可与 Rust 最先进的有界模型检查器 Kani 相媲美。
由于底层库 Soteria 已被证明是 sound,我们可以信任引擎的运行结果,并将精力集中在 Rust 语义的细枝末节上,而无需从头开始构建符号执行引擎。
我们使用一系列基准测试将 Soteria Rust 与 Kani 和 Miri 进行比较,结果表明 Soteria Rust 性能优异,分析功能比 Kani 更全面,并且与 Miri 不同,它还进行了符号分析。最后,我们概述了未来的工作方向,包括支持组合分析和双向溯因推理。
见:https://rust-formal-methods.github.io/meetings/soteria/
--
From 日报小组 苦瓜小仔
社区学习交流平台订阅:
评论区
写评论还没有评论