大家好,我是良许。
最近Linux社区因Rust引入内核的争议吵得沸沸扬扬,老牌内核开发者与Rust推进派针锋相对。
这场看似是C与Rust的技术路线之争,实则暴露了开源系统在拥抱新技术时,激进革新与保守维稳之间的深层矛盾。
表面是语言之争,本质是利益博弈
不少人以为这只是C和Rust的技术PK,实则远非如此。
Linux内核维护者反对Rust,对外称“学习成本高”“工具链不成熟”“破坏现有生态”,核心却是既得利益者不愿打破现有格局。
这些深耕C语言数十年的老炮儿,建立了专属的话语权体系,熟悉C语言的所有规则与坑点,新人入局需遵循他们的规矩。
而Rust凭借内存安全特性试图重构部分模块,不仅意味着他们要重新学习生命周期、所有权等全新概念,更可能让基于C语言建立的权力结构被洗牌,这是他们难以接受的。
技术债务沉重,革新步履维艰
Linux内核的内存安全漏洞早已是沉疴顽疾,CVE数据库里空指针解引用、缓冲区溢出等漏洞层出不穷,微软、谷歌也曾公开表示,其产品70%的严重安全漏洞都源于内存安全问题。
C语言赋予程序员极高自由度,但这种自由如同给孩童递上真枪,极易“走火”;而Rust能在编译期规避这类问题,从根源减少漏洞。
可现实是,Linux内核已有2700多万行C代码,是30年技术债务的累积。
若用Rust重写,工作量大到难以想象;若渐进式引入,老代码与新代码的接口适配、FFI调用的开销等问题又无从解决,历史包袱让内核革新举步维艰。
社区治理与商业力量的双重博弈
Linux社区仍沿用九十年代邮件列表+补丁的协作模式,Linus的“强人治理”在早期高效,如今却成了创新阻碍。
Rust进内核的技术可行性早已论证,谷歌、微软等大厂也在积极推动——谷歌为了Android底层更安全,微软为了减少Azure安全事故,这些商业公司有着明确的诉求。
但社区老炮儿们抵触这种商业驱动,认为要守护开源精神的纯洁性。
可他们的固执也暗藏风险,如今已有Redox OS等Rust编写的类Unix内核在发展,若Linux始终止步不前,未来或沦为遗留系统。
同时,社区的“毒性”也劝退新人,不少Rust开发者的合理建议被老维护者粗暴驳回,最终无奈退出,这也让内核革新的阻力进一步加大。
打工人该如何看待这场争论
对普通开发者而言,这场争论是生动的一课:技术选型从不是单纯的技术问题,而是政治、经济、人性交织的综合体。
就像在公司推新技术,总会遇到老员工不愿学习、领导怕担风险、财务顾虑成本的阻力,技术优势往往不是决策的核心因素。
真正推动变革的多是外部压力——竞争对手的技术碾压、重大安全事故、大客户的硬性要求。
因此不必在技术路线上死磕,核心是积累解决问题的能力,而非纠结于C或Rust这类工具本身。
Linux社区的这场争论终会以妥协收场,或许Rust会慢慢渗透,或许会分叉出新项目,或许仍继续用C修补漏洞。
但技术演进的大势不可阻挡,抱残守缺者终将被时代抛弃,这是历史规律,而非危言耸听。