专栏名称: OSC开源社区
OSChina 开源中国 官方微信账号
目录
相关文章推荐
OSC开源社区  ·  DeepSeek-V3满血版在国产沐曦GPU ... ·  昨天  
OSC开源社区  ·  国内AI适配再下一城:天数智芯加入,Deep ... ·  2 天前  
程序员的那些事  ·  趣图:初五迎财神,初六送穷鬼 ·  2 天前  
程序员的那些事  ·  o3-mini ... ·  4 天前  
OSC开源社区  ·  DeepSeek R1已在Gitee ... ·  4 天前  
51好读  ›  专栏  ›  OSC开源社区

FreeBSD社区正在为是否“锈化”而激辩

OSC开源社区  · 公众号  · 程序员  · 2024-09-02 16:44

主要观点总结

本文讨论了FreeBSD社区正在考虑将Rust语言纳入其基础系统的议题。文章提到了Rust的优势,社区内的不同观点,以及可能的挑战和争议。文章还提到了DARPA的TRACTOR项目以及可能的未来发展。

关键观点总结

关键观点1: Rust语言被提议纳入FreeBSD基础系统

FreeBSD社区正在讨论是否将Rust语言纳入其基础系统,以改善系统的安全性和可维护性。该提议的动机是Rust可以提供更安全的代码和更少的漏洞。

关键观点2: 社区内的不同观点

虽然有人支持将Rust纳入基础系统,但也有人担心这可能会带来兼容性问题、工具链管理问题以及是否应该在基础系统中支持整个Rust生态系统。一些开发者提议将Rust编写的程序保留在ports集合中。

关键观点3: DARPA的TRACTOR项目与C到Rust的代码转换

美国国防高级研究计划局DARPA正在研究一个名为TRACTOR的项目,旨在自动将C代码转换为Rust代码。但这个项目的成功性仍存在争议。

关键观点4: 社区争议与未来发展

关于如何维护Rust代码的长期稳定性和兼容性,以及在FreeBSD基础系统中采用Rust的议题仍存在争议。社区内的讨论和争议预示着这一议题的重要性和复杂性。


正文

FreeBSD 社区正在讨论是否将 Rust 语言纳入基础系统(base system),以改善系统的安全性和可维护性。

与 Linux 不同,FreeBSD 操作系统内核和用户空间是作为基础系统一起开发的,并在 FreeBSD 源代码树(通常称为 “src”)中维护
这意味着,为了讨论使用 Rust 作为 FreeBSD 内核或基础系统中其他程序 / 实用程序的语言,Rust 工具链也需要存在于基础中。
目前,FreeBSD 基础系统支持的语言包括汇编、C、C++、Lua 和为 sh 编写的 shell 脚本。
在遥远的过去,Perl 也是基础系统的一部分,但在 2002 年 FreeBSD 5.0 之前被删除。
FreeBSD 还拥有一个第三方软件的 ports 集合,这些软件并非由 FreeBSD 本身维护,包括 Apache HTTP Server、Xwayland 等等。
Rust 已经存在于 ports 系统中,许多用 Rust 语言编写的应用程序也是如此。
在 FreshPorts 上搜索,会列出 ports 集合中的新软件包,结果显示 ports 系统中有 500 多个用 Rust 编写的软件包。

这一讨论始于 2024 年的早些时候,并在 8 月份再次受到关注。

Alan Somers 展示了将 Rust 代码集成到基础系统中的示例,但这一提议并未获得广泛的支持。

他表示,如果 FreeBSD 基础系统采用了 Rust,开发者可以重新 Rust 重写许多组件 —— 而不是使用 C++,例如 ZFS 守护进程 (zfsd)、重写 devd、WiFi 用户空间代码也可以受益于用 Rust 编写,等等。

但也有开发者认为,将 Rust 语言和其工具链纳入基础系统将会带来很多问题,例如与现有 LLVM 版本的兼容性问题,以及是否应该在基础系统中支持整个 Rust 生态系统。

一些开发者提出,应该优先考虑移除基础系统中的工具链,而将 Rust 编写的程序保留在 ports 集合中

此外,有人担心 Rust 语言的快速发展可能会导致与现有代码的兼容性问题,尽管 Rust 的版本策略和编 ITION 概念旨在解决这些问题。

Rust 社区通过版本策略和编 ITION 概念来确保向后兼容性,这有助于解决与现有代码的兼容性问题。

但在 FreeBSD 社区中,对于如何维护 Rust 代码的长期稳定性和兼容性仍然存在争议。

同时,美国国防高级研究计划局 DARPA 正在研究一个名为 TRACTOR 的项目,用于自动将 C 代码转换为 Rust 代码,但这一项目并不一定成功,因为它依赖于高度先进的技术,如 LLMs 和形式验证。

这一次大讨论,又无果而终。不过预估这一话题还会再次被提起。


来源:《FreeBSD considers Rust in the base system》
https://lwn.net/Articles/985210/

延伸阅读
FreeBSD也要 “锈化”?
美国国防部建议将C代码转换为Rust——而且是用AI
Ubuntu开始“锈化”

🎁 转发、评论本文有福利



揾食艰难,跪求观众老爷们积极三连!Orz



如果本文阅读量破 1 万(发布后 7 天内留言区点赞数最多的水友将获赠一份 OSC 定制的周边礼物( T 恤、魔方或笔记本)。


分享在看点赞
至少我要拥有一个吧


END





请到「今天看啥」查看全文