如果你现在看 Linux 内核邮件列表,已经不像一个协作式工程论坛,更像是一场混乱而公开的离婚大战。
Linux 驱动着整个世界。它运行在你的 Android 手机上,运行着托管这篇文章的服务器,支撑着股票市场和国际空间站。三十多年来,它几乎完全建立在一个基础之上:C 编程语言。
但此刻,这个基础正在开裂。
一场内战已经在老一代 C 语言维护者和新一代 Rust 开发者之间爆发。局势已经恶化到顶级维护者辞职、美国政府发出警告,甚至连 Linus Torvalds 本人都不得不出面干预。
当我审视如今管理的网络架构时,从 C/C++ 向 Rust 转型已经不仅仅是一种趋势,也是一种结构性刚需。性能指标和内存安全方面的优势根本无可否认。最近我和另一位系统工程师讨论了这一转变,我非常敬重他的技术能力。我们一致认为:内核针对 Rust 的阻力已经不再关乎工程,还关乎着自尊心。
如果你身处科技行业,就必须关注这件事。这不仅仅是一场关于语法的极客争论,而是一场围绕全球IT基础设施走向何方的战争。
导火索:非技术的荒谬纷争
自 Rust for Linux 项目正式将 Rust 引入 Linux 内核以来,紧张局势已经酝酿了数年。但真正达到沸点时刻,是该项目的核心维护者之一 Wedson Almeida Filho 突然宣布辞职。
他离开的原因不是代码无法工作,而是这种文化氛围。
在提交到 Linux 内核邮件列表的公开辞职信中,Filho 抛出了一枚重磅炸弹:
我真心相信内核的未来属于内存安全语言……我已经不愿再应付这些非技术性的荒谬行为。那些有毒的氛围、主动的破坏行为,以及由自尊心驱动的抵制。
他揭露了一个巨大裂缝:资深的 C 语言维护者不仅仅对 Rust 持怀疑态度,其中一些人甚至积极阻挠它的发展。
当 Asahi Linux(将 Linux 移植到 Apple Silicon 平台的项目)的首席开发者 Hector Martin 试图使用 Rust 与内核虚拟文件系统(VFS)交互时,他遭到了资深 C 维护者的强硬阻拦。这一拒绝引发了一场公开争执,Martin 随后在社交媒体上公开抨击这种官僚主义:
内核中的 C 阵营现在已经彻底出了问题。我们有一些维护者公开敌视内存安全,并利用自己的管理权限阻碍进步。
为什么科技巨头(以及政府)都在恐慌
为什么这么多人拼命想把 Rust 引入一个拥有三十年历史的 C 代码库?
答案是:内存安全(Memory Safety)。
C 赋予开发者对计算机内存的绝对控制权。如果开发者犯错,就可能产生漏洞(例如缓冲区溢出)。Rust 拥有严格的编译器,可以从数学层面阻止这类内存错误通过编译。
相关数据不寒而栗,大型企业已经厌倦了为这些问题买单:
微软安全响应中心(MSRC)公布的数据表明,产品中 70% 的严重安全漏洞(CVE)都源于 C 和 C++ 固有的内存安全问题
Google 在 Android 上也发现了类似情况。在大规模引入 Rust 后,Android 中与内存安全相关的漏洞占比从全部漏洞的 76% 降至 35%
美国政府甚至亲自下场。在一次具有历史意义的行动中,白宫国家网络总监办公室(ONCD)发布报告,明确敦促整个科技行业放弃 C 和 C++,转而采用内存安全语言
当白宫和 Google 都在告诉你:你的代码库已经成为国家安全风险时,“我们一直都是这么用 C 写的”就不再是一个合理的工程学论据了。
教父发声:Linus Torvalds 失去了耐心
Linux 创造者 Linus Torvalds 一向以强硬捍卫 C 语言和毫不留情地批评糟糕代码而闻名。
即便是他,也对部分 C 语言原教旨主义者的顽固感到疲惫。
在开源峰会上,Torvalds 终于正面回应了这场内战。令许多 C 语言老将震惊的是,他站在了 Rust 推广者这一边,并批评了那些抵制行为。
Torvalds 表示:
我预料到了会有分歧,但没想到会出现宗教式的争论。这让我想起过去人们争论 C 和汇编语言谁更好的时代。人们习惯于自己熟悉的东西,并且会对变化感到威胁。
Torvalds 说得很明确:Linux 内核必然会进化。他还点名批评了一些资深 C 维护者过于吹毛求疵的作风,认为他们正利用官僚程序和繁琐规则阻碍 Rust 实现方案的推进。
关于C/C++恐惧症一个令人不安的事实
这对整个行业意味着什么?如果你是一名 CTO、工程经理或开发者,这里蕴含着一个巨大的启示。
我们正在见证 C 和 C++ 的遗产化(Legacy-ification)。
这与 COBOL 在银行业经历的过程如出一辙。C 不会在明天突然消失——世界上仍然存在数十亿行遗留 C 代码。但越来越多公司已经意识到:如果今天启动一个新项目却仍然选择 C,本质上是一种技术失职。
顶尖工程师正在旁观这场风波,并据此作出职业选择。如果一家公司在 2026 年仍然强迫开发者使用一种先天缺乏安全性的语言,它将越来越难招募到顶级人才。
结论
开源社区正在痛苦地学到一个教训:技术债务不仅仅来自糟糕的代码,也来自糟糕的文化。
那些抵制 Rust 的 C 维护者,并不是因为 Rust 太慢而反对它。他们反对它,是因为 Rust 剥夺了他们三十年来形成的肌肉记忆,并迫使他们适应一个会明确告诉他们“你错了”的编译器。
然而市场早已作出决定。科技巨头要求内存安全,政府正在推动内存安全,Linus Torvalds 也为内存安全语言扫清了道路。
这场内战正在结束,C 已经输了。
参考资料与延伸阅读
白宫国家网络总监办公室(ONCD).(2024)《Back to the Building Blocks: A Path Toward Secure and Measurable Software》——关于内存安全要求的白宫官方报告。
微软安全响应中心(MSRC)《A proactive approach to more secure code》——分析 CVE 数据并指出约 70% 漏洞与 C/C++ 内存安全问题相关。
Google Security Blog(2022–2024)《Memory Safe Languages in Android》——介绍引入 Rust 后,Android 内存安全漏洞占比从 76% 降至 35% 的相关指标报告。
Wedson Almeida Filho(2024)《Stepping down as Rust for Linux maintainer》——提交至 Linux 内核邮件列表(LKML)的公开辞职信,其中提及“非技术性的荒谬行为”。
Linus Torvalds——开源峰会主题演讲及问答环节中关于反对 Rust 的“宗教式争论”的相关表态。
Hector Martin(2024)——关于 Asahi Linux VFS Rust 绑定及维护者阻挠问题的 LKML 讨论串和相关社交媒体讨论。
参考
https://medium.com/the-tech-notes/linus-torvalds-just-picked-a-side-in-the-linux-civil-war-and-c-developers-are-furious-b2cc8a3c7ee0