查看原文
其他

Rust 编程语言登陆 Linux 内核 6.1

21CTO 2023-01-28

导读:Linux 将从 6.1 版开始在其内核中支持 Rust 编程语言。

在最近 Linux 内核邮件列表上的一篇文章里,帝企鹅 Linus Torvalds 承诺在Linux 内核中会有“一些相当核心的新事物”,第一个似乎已经出现:),Linux操作系统将直接支持 Rust 编程语言。

Rust 添加到 Linux 的补丁已经有一段时间了,其版本 9 已经在 2022 年 8 月发布。

在近日的开源峰会上,Torvalds 的主题演讲表明Linux粉丝们应该期待 Rust 出现在 6.1 中。

目前,Rust 有一组开发人员(https://github.com/Rust-for-Linux)正致力于支持 Linux 内核。

在内核开发者 Kees Cook 在 10 月 1 日提出的请求中,Torvalds 也接受了这一请求,我们看到了它将不可阻挡地到达 6.1 的第一步。

添加对 Rust 的支持,在 Linux 内核中增加了大约 12,500 行代码,它本身是用 C 语言编写的,Rust 与 C 语言具有一定的互操作性。

但是,GCC(Gnu Compiler Collection)无法对新语言进行编译。随着 Rust 获得官方 Linux 支持,以及热切的内核黑客社区,Rust 可用于更多架构只是时间问题。

此外,GCC 的 Rust 前端项目 Gccrs 已被批准合并到 GCC 主干,这表示下一个版本的  GCC 将能编译 Rust 源代码 。
据介绍,GCC Rust 补丁基于上游 GNU Compiler Collection 代码库重新编写,并为新的前端设置了布局骨架,还为 i386 和 ARM 提供初始 target hook,然后开始布局前端代码。此外,GCC 编译器支持的目标 (targets) 数量要远远多于标准的 Rust 编译器。
通过将 GCC 作为后端集成到 rustc 中,可以更好地实现支持这些 target。除了 LLVM 之外,rustc master 还为 Cranelift(更快的调试编译)和 GCC(访问不支持 LLVM 的架构)提供了开发中的后端。

一些Linux开发人员已经开始展示在 Linux 上使用 Rust 可以做什么,Western Digital 的首席工程师 Andreas Hindborg 在 2022 年 Linux Plumbers 峰会上展示了用 Rust 编写的适用于 Linux 的 NVMe SSD 驱动程序。

C 编程语言一直是 Linux 内核唯一的游戏。但是人们付出了巨大的努力将Rust纳入内核。Miguel Ojeda领导了一场将 Rust 作为原生添加的运动。现在6.1 版本的即将发布,Rust 开发人员终于可以开始在 Linux 上进行编程了。

作者:场长

相关阅读:

Rust 在 Android 上的安全性不断加强 Google 信任

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存