Workflow
内存安全模型
icon
搜索文档
5 年了!Rust 终于在 Linux 内核中“转正”了
程序员的那些事· 2025-12-18 09:41
Rust在Linux内核中的发展历程与现状 - 围绕是否将Rust引入Linux内核的争论持续数年,被视为对内核安全的潜在突破或对现有工程秩序的挑战[1] - 2025年Linux内核维护者峰会达成共识,Rust在Linux内核中的“实验阶段”正式结束,被明确认可为Linux主线内核的长期组成部分[2] - Rust for Linux项目始于2020年,初期定位克制,旨在评估Rust是否值得内核为其付出额外的复杂度成本,而非取代C或大规模重写内核[4] Rust在内核中取得认可的关键事实 - 自2022年以来,已有超过2万行Rust代码被合入Linux上游内核,表明其已成为持续演进的真实工程代码[5] - Rust编写的内核驱动已在真实设备中运行,例如Google Pixel系列手机的部分底层驱动,证明了其在生产环境中的可行性与安全性[5] - 围绕内核开发的Rust生态正在成熟,包括基础库、抽象层和工具链逐步完善,使得用Rust写内核代码具备可扩展性[5] 实验结束后的官方定调与未来工作 - 项目负责人Miguel Ojeda宣布,Rust支持在Linux v6.1版本合入主线,初衷是评估其是否适合内核开发,而2025年的峰会正式宣布实验结束[6] - 实验结束不代表完美,Rust在内核中的适配仍有大量工作要做,包括不同架构、内核配置以及GCC与LLVM混合构建的适配[6] - 一些组合方案,如GCC + LLVM混合构建以及即将到来的GCC原生Rust支持,目前仍具有一定实验性[6] - 方向已明确,Rust将长期留在Linux内核中[7] Rust驱动加速落地与行业影响 - 一批由Rust参与编写的重量级项目正在或即将进入Linux主线,包括面向Apple Silicon的Asahi GPU驱动、作为Nouveau继任者的Nova驱动(面向NVIDIA基于GSP的GPU)以及针对ARM Mali GPU的Tyr驱动[8] - 具体时间线:Asahi项目将在Linux 6.17中加入Devicetree schema支持,Nova驱动计划在Linux 6.19中完成初始启用,Tyr驱动已经能在Linux 6.18上启动GNOME桌面并运行基础游戏[8] - Linux内核对Rust“实验结束”的表态是一个明确信号,向公司、芯片厂商和开发者社区表明Rust是值得长期投入的方向,可能促使更多企业提供Rust培训,更多硬件厂商考虑用Rust编写新一代驱动[8] Rust与C语言的共存关系 - Rust在Linux内核中的地位转变,从“是否该引入”变成了“如何更好共存”的问题[9] - C语言在Linux内核中的核心地位不会被动摇,Linux内核仍将长期是一个以C为核心的工程[9]
5 年了,Rust 终于在 Linux 内核中“转正”了
36氪· 2025-12-15 19:53
Rust在Linux内核中的发展里程碑 - 在2025年Linux内核维护者峰会上,内核维护者达成共识,Rust在Linux内核中的“实验阶段”正式结束,被明确认可为Linux主线内核的长期组成部分[1] - Rust for Linux项目最早可追溯到2020年,其初始定位是评估Rust是否值得内核为其付出额外的复杂度成本,而非取代C或大规模重写内核[3] - 自2022年以来,已有超过2万行Rust代码被合入Linux上游内核,标志着其从概念验证转向持续演进的真实工程代码[3] Rust获得认可的关键驱动因素 - Rust提供的内存安全模型精准击中了Linux内核长期以来的痛点,同时其引入也带来了新的工具链和构建复杂度等挑战[3] - Rust编写的内核驱动已在真实生产环境中得到验证,例如Google Pixel系列手机的部分底层驱动已采用Rust实现,证明了其现实可行性[4] - 围绕内核开发的Rust生态正在成熟,包括基础库、抽象层和工具链逐步完善,使得用Rust编写内核代码具备可扩展性[4] 官方定调与未来工作方向 - Rust for Linux项目负责人Miguel Ojeda宣布,Rust支持是在Linux v6.1版本中合入主线的,初衷是评估其在技术、流程及社区层面是否值得付出相应成本[5] - 实验阶段的结束并不意味着工作完成,Rust在内核中针对不同架构、内核配置以及GCC与LLVM混合构建的适配仍有大量工作要做[6] - 方向已经明确,Rust将长期留在Linux内核中,但Linux内核仍将长期是一个以C为核心的工程,问题已转变为Rust与C如何更好共存[6][7] Rust驱动的具体落地进展 - 一批由Rust参与编写的重量级项目正在或即将进入Linux主线,包括面向Apple Silicon的GPU驱动Asahi项目、面向NVIDIA基于GSP的GPU的Nova驱动,以及针对ARM Mali GPU的Tyr驱动[7][8] - Asahi项目正朝着完整上游合入迈进,并将在Linux 6.17中加入Devicetree schema支持[8] - Nova驱动计划在Linux 6.19中完成初始启用,而Tyr驱动已经能在Linux 6.18上启动GNOME桌面并运行基础游戏[8] 对行业与生态的宏观影响 - Linux内核将Rust“实验结束”的表态向公司、芯片厂商和开发者社区释放了明确预期,即Rust在内核中是值得长期投入的方向[7] - 这一信号可能促使更多企业为内核开发者提供Rust培训,并推动更多硬件厂商考虑使用Rust编写新一代驱动[7]