进击云原生

V1

2022/02/26阅读:40主题:前端之巅同款

Rust 作为 Linux 的第二种官方语言向前迈出了一大步

Rust 作为 Linux 的第二种官方语言向前迈出了一大步

不久前,在 Linux 内核中使用除 C 之外的另一种语言的想法还被嘲笑。事情变了。今天,不仅高级系统语言Rust 更接近 Linux,而且它比以往任何时候都更接近于下一个“将 Rust 作为第二语言添加到 Linux 内核的支持的补丁系列”。

这些新软件包的最大变化是,为内核提出的 Rust 代码现在依赖于稳定的 Rust 编译器,而不是 beta 编译器。展望未来,每次发布新的稳定 Rust 编译器时,Linux 上的 Rust 都会迁移。目前,它使用Rust 1.57.0

通过这样做,作为 Linux 内核和 Linux 上的 Rust 负责人,开发人员 Miguel Ojeda 说,“通过升级编译器,我们已经能够从列表中删除一些我们正在使用的不稳定特性。” 反过来,这意味着 Linux 上的 Rust 将更加稳定。

展望未来,Ojeda 写道:“我们将继续升级,直到我们不依赖任何不稳定的功能;此时我们可能想要开始声明支持最低 Rust 版本,就像它已经完成的那样,例如 GCC 和 Clang。

高级 Linux 内核开发人员 Greg Kroah-Hartman 告诉我,他相信“驱动程序可能是”Rust 在 Linux 中出现的第一个位置,因为“它们是内核源代码中依赖关系树的‘末叶’。它们依赖于内核内核功能,但没有什么依赖于它们。”

这已经有好几年了。在虚拟的2020 Linux Plumbers 大会上,顶级 Linux 内核开发人员讨论了 Linux 的未来,引入了将Rust 作为内核的第二语言的想法。

虽然 Linus Torvalds 确信,Linux 最终不会用 Rust 编写。但是,这不是目标。没有人会用 Rust 重写内核的 2500 万行 C 代码。

在 Rust 语言负责人 Josh Triplett 和 Google 工程师 Nick Desaulniers 的带领下,他们提议在内核中使用系统级 Rust 语言。为什么?因为它比 C 更安全,尤其是在处理内存错误方面。

正如微软首席云开发倡导者 Ryan Levick 所解释的那样,“ Rust 是完全内存安全的。” 由于大约三分之二的安全问题可以追溯到内存处理不当,这是一项重大改进。此外,“Rust 通常可以在不增加任何运行时开销的情况下防止这些问题,”Levick 说。

Torvalds 看到了优势。虽然他鼓励将 Rust 引入 Linux 的缓慢但稳定的方法,但他也表示将 Rust 接口用于驱动程序和其他非核心内核程序是有道理的:“我相信它会发生。它可能不是 Rust,但它将会发生,我们将有不同的模型来编写这些东西,而 C 不会是唯一的。”

因此,正如 Ojeda 今年夏天告诉ZDNet 的那样,“该项目尚未完成,但如果高级维护人员接受当前的更改并更喜欢我们在内核中工作,我们已经准备好进行主线化。大部分工作仍在我们前面。 。”

不过,现在工作进展顺利。我希望在 2022 年的某个时候在 Linux 内核中看到第一个 Rust 代码。

翻译

Rust 作为 Linux 的第二种官方语言向前迈出了一大步

关注

本文首发于微信公众号【进击云原生】,扫码关注,了解更多咨询,更有免费资源供您学习

扫码关注,加群学习
扫码关注,加群学习

分类:

后端

标签:

后端

作者介绍

进击云原生
V1

公众号:进击云原生