Linux迎来重要转折点!Rust驱动将全面进军内核核心,项目负责人称Rust现在处于有利地位

C语言与CPP编程 2024-12-19 09:03

推荐关注↓

转自:InfoQ - Tina

11 月 30 日,除了之前合并到 Linux 6.13 内核开发窗口的 USB 更新和大型 staging 分支更新外,“char/misc”模块的更改也被采纳。作为内核中汇总各种改动的模块,“char/misc”合并中引入了一些重要更新,这对希望用 Rust 编程语言编写内核驱动的开发者来说尤其值得关注。

Linux 内核关键维护者 Greg Kroah-Hartman 表示,随着这些改动的引入,Linux 6.13 现在可以支持更多基于 Rust 的内核驱动开发。

在“char/misc”合并中,他解释道:“Rust 中的 misc 驱动绑定和其他改动使得开发 misc 驱动成为可能。我认为这是一个转折点,有了这些绑定,未来会有更多 Rust 驱动出现。希望在下一个合并窗口中,我们能够实现 PCI 和平台驱动的功能,从而全面支持几乎所有驱动子系统接受(或至少尝试使用)Rust 驱动。这是许多开发者共同努力的成果,祝贺大家取得这样的进展。你们用可运行的代码证明了我们许多人的质疑是错误的 :)。”

这位资深内核开发者预测,未来我们将看到越来越多的上游 Rust 驱动程序。

1 辞职风波是“黎明前最黑暗的时刻”

除了“char/misc”子系统,Rust for Linux 项目负责人 Miguel Ojeda 还于 11 月 26 日提交了一组针对 Linux 6.13 holiday 内核的大规模 Rust 基础设施和工具链更新,一夜之间让 Linux 增加了 3000 行 Rust 代码。

Linux 6.13 的合并窗口预计将于今天(12 月 1 日)结束,同时发布 Linux 6.13-rc1。Linux 6.13 正逐步成为一个重要的内核版本,稳定版本预计将在 1 月底左右发布。

从这次版本发布中,我们可以得出两个重要信息:一是 Greg Kroah-Hartman 承认,包括他在内的部分人曾质疑 Rust,但这是“错误”的,他认为 Rust for Linux 维护者用实际可行的代码证明了 Rust 在内核开发中的潜力。二是尽管此前 Rust for Linux 维护者宣布退出内核开发,但实际上,将 Rust 代码引入 Linux 的进展并未受到太大影响。

今年 9 月份的时候,微软工程师、 Rust for Linux 维护者之一 Wedson Almeida 在 Linux 内核邮件列表上宣布退出该项目。他离开的原因是,“在过去四年的工作当中,我发现自己的精力和热情已经被严重消磨,越来越抗拒回应那些跟技术无关的废话。所以这份任务,最好是留给那些仍然抱有这份热情的成员。”

C 和 Rust 两派的分歧一直很大。一些现有的 C 语言程序员对 Rust 作为第二语言的引入持抵触态度,担心这会增加他们的工作复杂性,或迫使他们学习 Rust 而感到压力。英特尔 Linux 核心内核架构团队成员 Dan Williams 也曾指出,Rust 在 Linux 内核中的应用面临一个问题:“内核维护者往往非常保守。” 他们对 C 语言非常熟悉,可以说了如指掌,但对 Rust 却并不了解。因此,他们“不知道该如何审查这些代码,也不知道如何调试那些代码,因为他们并不理解这些代码。”

在 Linux 缔造者 Linus Torvalds 看来,这场争议“几乎上升到了带有宗教战争色彩的信仰之争层面”。而对于不少人因此断言 Rust 的融合之路已经失败的观点,Linus 评论道,“我们已经在这方面探索了几年,所以目前下结论还为时过早。但我也认为,哪怕是失败了(虽然我并不支持这种失败论),这也是学习经历的一部分。所以我觉得推广 Rust 是有积极意义的,可争论过程中的很多人似乎并不这么看。”

作为 Rust for Linux 项目的首席维护者,Miguel Ojeda 则将 Wedson 的辞职描述为该项目“黎明前最黑暗”的时刻。

“对我来说,这当然非常困难,”Ojeda 表示,“但从积极的角度看,这或许是黎明前最黑暗的时刻……我想向大家保证,项目正在继续前进。”

2 将 Rust 融入 Linux 曾是一些人的“白日梦”

不久前,Miguel Ojeda 在 RustConf 2024 主题演讲中回顾了 Rust for Linux 项目的历史。


早在 2013 年就有人提出了为内核编写 out-of-tree Rust 模块的想法,那时 Rust 还未正式发布 1.0 版本。然而,Rust for Linux 并不仅限于 out-of-tree 模块的开发,其目标是将 Rust 的支持集成到 Linux 主线中,使其能够用于 C 能完成的所有内核任务。值得说明的是,一般情况下,稳定且常用的驱动都是 in-tree 的,它们位于内核源代码树的对应目录下。

2019 年夏天,Miguel Ojeda 创建了 Rust for Linux GitHub 组织,但直到 2020 年才真正投入使用。同年 7 月,Nick Desimone 发起了一封关于对 Rust 感兴趣的邮件,随后大家意识到有不少人希望这件事能够成真。

“那时,这仍然只是一个白日梦”,但 Miguel Ojeda 认为让大家在同一目标下独立工作会很有意义,于是他提交了第一个 Rust 拉取请求,后来越来越多的人加入了这个项目。经过多次协作,最终在两年后,Rust 支持被合并至内核的 6.1 版本。


Rust for Linux 旨在为 Linux 内核引入对 Rust 编程语言的支持,目标是实现对 Rust 的一流支持,即在内核中任何可以用 C 实现的功能都可以用 Rust 实现。

他们的最终目标并不仅仅是 out-of-tree 模块,而是 in-tree,以及用 Rust 编写核心 API 和子系统,这不仅限于内核空间代码,还包括宿主和用户程序。

Miguel Ojeda 强调项目的关键目标一直都是“将这些支持集成到主线内核中”。并且就像他之前总结的那样:“Rust 现在处于有利地位。”

参考链接:

https://www.phoronix.com/news/Linux-6.13-char-misc-More-Rust

https://devclass.com/2024/09/18/rustconf-speakers-affirm-rust-for-linux-project-despite-challenges-of-unstable-rust-maintainer-resignation/

https://www.youtube.com/watch?v=FRMJzNYut4g

https://www.zdnet.com/article/rust-in-linux-now-progress-pitfalls-and-why-devs-and-maintainers-need-each-other/

EOF

你好,我是飞宇,本硕均于某中流985 CS就读,先后于百度搜索字节跳动电商以及携程等部门担任Linux C/C++后端研发工程师。

最近跟朋友一起开发了一个新的网站:编程资源网,已经收录了不少资源(附赠下载地址),如果屏幕前的靓仔/女想要学习编程找不到合适资源的话,不妨来我们的网站看看,欢迎扫码下方二维码白嫖~

同时,我也是知乎博主@韩飞宇,日常分享C/C++、计算机学习经验、工作体会,欢迎点击此处查看我以前的学习笔记&经验&分享的资源。

我组建了一些社群一起交流,群里有大牛也有小白,如果你有意可以一起进群交流。

欢迎你添加我的微信,我拉你进技术交流群。此外,我也会经常在微信上分享一些计算机学习经验以及工作体验,还有一些内推机会

加个微信,打开另一扇窗

感谢你的分享,点赞,在看三  

C语言与CPP编程 C语言/C++开发,C语言/C++基础知识,C语言/C++学习路线,C语言/C++进阶,数据结构;算法;python;计算机基础等
评论
  • 以人形机器人和通用人工智能为代表的新技术、新产品、新业态蓬勃发展,正成为全球科技创新的制高点与未来产业的新赛道。01、Optimus-Gen 2来了,人形机器人管家还远吗?没有一点点防备,特斯拉人形机器人Optimus-Gen 2来了!12月13日,马斯克于社交媒体上公布了特斯拉第二代人形机器人的产品演示,并预计将于本月内发布。在视频中,Optimus-Gen 2相比上一代有了大幅改进,不仅拥有AI大模型的加持,并在没有其他性能影响的前提下(相比上一代)将体重减少10kg,更包含:由特斯拉设计的
    艾迈斯欧司朗 2024-12-18 12:50 91浏览
  • 2003年买的电子管功放机,俗称胆机,坏过几次,咨询厂家,购买零件,自己修理,干中学,学中干。有照片记录的是2011年3月,一天,发现整流管比之前红亮了很多,赶紧关机,想找原因,反反复复折腾了几个月,搞好了。就此,还在网上论坛咨询和讨论,欧博Rererence 5.0电子管发粉红色光,何故?-『胆艺轩音响技术论坛』-胆艺轩[Tubebbs]论坛 发表于2011-5-7同时与厂家联系得到支持,见文:29kg胆机修理之联想——环保简易,做到真难!-面包板社区 发表于2011-6-13又继续使用了多年
    自做自受 2024-12-17 22:18 173浏览
  •   前言  作为一名电子专业的学生,半导体存储显然是绕不过去的一个坎,今天聊一聊关于Nand Flash的一些小知识。  这里十分感谢深圳雷龙发展有限公司为博主提供的两片CS创世SD NAND的存储芯片,同时也给大家推荐该品牌的相关产品。  一、定义  存储芯片根据断电后是否保留存储的信息可分为易失性存储芯片(RAM)和非易失性存储芯片(ROM)。  非易失性存储器芯片在断电后亦能持续保存代码及数据,分为闪型存储器 (Flash Memory)与只读存储器(Read-OnlyMemory),其中
    雷龙发展 2024-12-17 17:37 69浏览
  •        随着对车载高速总线的深入研究,以电信号为媒介的传输方式逐渐显露出劣势,当传输速率超过25Gbps时,基于电信号传输已经很难保证长距离传输下的信号质量与损耗。在这样的背景下,应用于工业领域的光通信技术因其高带宽、长距离、低电磁干扰的特点得到了密切的关注,IEEE在2023年发布了802.3cz[1]协议,旨在定义一套光纤以太网在车载领域的应用标准。MultiGBASE-AU总览       以下是Mult
    经纬恒润 2024-12-17 17:29 81浏览
  •  2024年下半年,接二连三的“Duang Duang”声,从自动驾驶行业中传来:文远知行、黑芝麻、地平线、小马智行等相继登陆二级市场,希迪智驾、Momenta、佑驾等若干家企业在排队冲刺IPO中。算法模型的历史性迭代与政策的不断加码,让自动驾驶的前景越来越清晰。由来只有新人笑,有谁听到旧人哭。在资本密集兑现的自动驾驶小元年里,很多人可能都已经遗忘,“全球自动驾驶第一股”的名号,曾经属于一家叫做图森未来的公司。曾经风光无两的“图森”,历经内讧与退市等不堪往事之后,而今的“未来”似乎被锚
    锦缎研究院 2024-12-18 11:13 87浏览
  • 习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-18 14:02 96浏览
  • 上汽大通G90是一款集豪华、科技与舒适于一身的中大型MPV,号称“国产埃尔法”。在国内市场,作为“卷王”的G90主要面向中大型MPV市场,满足家庭出行、商务接待和客运租赁等多元化场景需求,在国内市场上取得了不错的销售成绩。在海外市场,上汽大通G90也展现出了强大的竞争力,通过技术创新和品质提升,上汽大通的产品在国际市场上获得了广泛认可,出口量持续增长,如果你去过泰国,你就应该可以了解到,上汽的品牌出海战略,他们在泰国有建立工厂,上汽大通G90作为品牌的旗舰车型之一,自然也在海外市场上占据了重要地
    lauguo2013 2024-12-18 10:11 97浏览
  • You are correct that the length of the via affects its inductance. Not only the length of the via, but also the shape and proximity of the return-current path determines the inductance.   For example, let's work with a four-layer board h
    tao180539_524066311 2024-12-18 15:56 92浏览
  • 户外照明的“璀璨王者”,艾迈斯欧司朗OSCONIQ® C3030降临啦全球领先的光学解决方案供应商艾迈斯欧司朗(瑞士证券交易所股票代码:AMS)近日宣布,推出新一代高性能LED——OSCONIQ® C 3030。这款尖端LED系列专为严苛的户外及体育场照明环境而设计,兼具出色的发光强度与卓越的散热效能。其支持高达3A的驱动电流及最大9W的功率输出,以紧凑扁平封装呈现卓越亮度和可靠性,确保高强度照明持久耐用且性能出众。应用领域01体育场及高杆照明OSCONIQ® C 3030以卓越的光通量密度、出
    艾迈斯欧司朗 2024-12-18 14:25 87浏览
  • 车载光纤通信随着ADAS(高阶驾驶辅助系统)、汽车智能网联、V2X和信息娱乐技术的不断发展,车载电子系统和应用数量迅速增加。不断增长的车内传输数据量对车载通信网络造成了巨大的数据带宽和安全性需求,传统的车载总线技术已经不能满足当今高速传输的要求。铜缆的广泛使用导致了严重的电磁干扰(EMI),同时也存在CAN、LIN、FlexRay等传统总线技术不太容易解决的问题。在此背景下,车载光纤通信技术逐渐受到关注和重视,除了大大提高数据传输率外,还具有抗电磁干扰、减少电缆空间和车辆质量等优点,在未来具有很
    广电计量 2024-12-18 13:31 85浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦