DC娱乐网

太牛了,Rust 从实验性语言发展成为 Linux 内核的核心语言!

曾被视为“实验性尝试”的 Rust,如今已经在 Linux 内核中完成转正。在 2025 年底举行的 Linux Ker

曾被视为“实验性尝试”的 Rust,如今已经在 Linux 内核中完成转正。

在 2025 年底举行的 Linux Kernel Maintainer Summit 上,内核社区正式达成共识: Rust 不再是实验语言,而是 Linux 内核的长期核心语言之一,与 C 并列。

这标志着 Linux 内核在系统编程语言上的一次重要转折,也意味着 Rust 将在未来的内核开发中扮演越来越重要的角色。

实验结束,Rust 成为内核“正式成员”

Rust 早在几年前就被引入 Linux 内核,但一直被标注为 experimental。

这一标签的存在,意味着它更多是“尝试”,而非长期承诺。

如今,这一阶段已经结束。

内核开发者 Jonathan Corbet 在峰会上表示:

“开发者已经达成共识,Rust 在内核中不再是实验性的,它会长期存在。”

Rust-for-Linux 项目负责人 Miguel Ojeda 也明确指出,Rust 已经成为 Linux 内核的正式组成部分。

在内核文档中,Rust 相关内容也从“实验说明”升级为正式功能文档,并新增了专门的 Rust 内核开发与构建说明页面。同时,一份《Rust Kernel Policy》政策文档被发布,用于明确 Rust 在内核中的使用边界,避免误解。

Rust 会优先出现在哪里?

需要明确的是,Linux 内核不会整体重写为 Rust。

当前和可预期的方向是:

新增代码优先使用 Rust现有 C 代码保持不动

目前,Rust 在内核中的应用主要集中在:

各类硬件驱动外设与 I/O 子系统一些复杂、容易出错的功能模块

已经或正在引入 Rust 的方向包括:

PHY 驱动NVMe 相关模块Android BinderApple AGX GPU 驱动新一代 Nvidia GPU(Nova)DRM 崩溃界面中的辅助功能模块

这些领域普遍具有一个共同点:

代码复杂度高、历史包袱重、安全问题频发。

图形子系统

Linux 图形子系统(DRM)正在成为 Rust 最活跃的落地点之一。

DRM 维护者 Dave Airlie 表示,项目计划在未来一段时间内:

要求新驱动使用 Rust 编写在部分路径上不再接受新的 C 驱动代码

这意味着,未来 Linux 显卡驱动的开发语言,可能会逐步从 C 转向 Rust,尤其是在新硬件和新控制器支持方面。

DRM 架构示意图

Android Binder

Rust 在 Linux 内核中最引人关注的应用之一,是 Android Binder 驱动。

Binder 是 Android 系统中最核心的 IPC(进程间通信)机制,几乎所有系统服务和应用都依赖它完成跨进程调用,因此也是 Android 最敏感、最关键的内核组件之一。

目前进展包括:

Rust 版 Binder 已合入 Linux 6.18 主线内核与原有 C 实现并行存在Android 16 成为首个在生产环境启用 Rust Binder 的版本已在多款 2025 年旗舰机型中出货

这意味着 Rust 已不再停留在测试阶段,而是真正进入了大规模商用环境。

首个 Binder CVE 出现

值得注意的是,Rust 并不等于“绝对安全”。

2025 年底,Rust Binder 驱动被披露首个安全漏洞(CVE-2025-68260),该问题源于竞争条件,可能导致系统崩溃或拒绝服务。

该漏洞已被修复,但也再次提醒开发者:

Rust 能显著降低内存安全风险,但并不能消除所有逻辑错误。

内核社区的不同声音

尽管技术路线已基本确定,但社区内部并非完全一致。

部分长期内核开发者对引入第二种核心语言表示担忧,认为这会增加维护复杂度。 对此,Linus Torvalds 的态度相对明确:

Rust 是可选的没有任何子系统被强制接受 Rust内核不会被整体重写

这一立场在一定程度上缓解了社区争议。

工具链与发行版

随着 Rust 成为内核正式语言,其工具链也被纳入长期维护计划。

内核社区明确要求:

必须能使用 Debian Stable 中提供的 Rust 工具链构建内核。

与此同时,发行版层面也在跟进:

Debian 计划在 2026 年前后强化 Rust 依赖Ubuntu、Linux Mint 等发行版将同步受影响

这意味着,Rust 将成为 Linux 生态中越来越常见的基础组件。

对普通 Linux 用户和运维人员来说,短期内感知变化不大;

但从长期看,内核稳定性、安全性和可维护性将逐步受益。