园 新留园 海外华人的新闻与社区
论坛 新闻时事 Systemd 正式支持 Rust 语言:在保留 C 核心架构的同时探索新编程范式

Systemd 正式支持 Rust 语言:在保留 C 核心架构的同时探索新编程范式

【核心提要】

  • Systemd 开始支持使用 Rust 语言开发其端点程序及相关组件。
  • 系统核心库仍将保留 C 语言编写,且目前无计划将其重构为 Rust。
  • 该功能作为可选支持提供,并采用 Meson 构建系统而非传统的 Cargo 工具链。

【正文报道】

近日,Systemd 项目宣布在架构中引入对 Rust 语言的支持。这一举措旨在利用 Rust 的内存安全性优势来增强相关组件的稳定性,同时为开发者提供更多样化的编程选择。

然而,需要注意的是,此次支持并非意味着核心代码的大规模重写。根据官方说明,Systemd 的核心库(systemd library)目前仍不支持 Rust 代码。开发团队明确表示,他们并没有计划将现有的 C 语言编写的核心代码迁移到 Rust。Rust 支持的范围主要集中在 Systemd 的程序及端点组件(end components)。

在技术实现细节上,为了保持与现有系统的兼容性,Systemd 的 Rust 组件并非通过传统的 Cargo 工具链直接构建,而是集成在 Meson 构建系统中。此外,所有 Rust 代码都被强制要求使用 C 语言进行链接,以确保其能够无缝嵌入到现有的系统架构中。

关于性能与体积的权衡,初步测试数据显示,Rust 实现的组件体积略大于对应的 C 语言版本。例如,一个典型的测试程序在采用 Rust 开发时体积为 32KB,而对应的 C 语言版本为 20KB。尽管存在细微的体积差异,但这种差距在当前的技术框架下被视为可接受的范围。

目前,Systemd 对 Rust 的支持仍处于“可选”状态。这一策略反映了 Systemd 开发团队在追求新技术红利与维护底层系统稳定性之间的审慎平衡。通过允许开发者在非核心组件中使用 Rust,Systemd 可以在不破坏现有稳定性的前提下,逐步探索更现代的编程语言生态。

【小编观点】
Systemd 选择“渐进式”引入 Rust 而非全盘重构,是极具实操意义的策略。对于底层系统工具而言,稳定性永远是第一位的。通过在端点组件中引入 Rust,既能利用其强大的类型安全特性来减少潜在的内存错误,又能确保核心逻辑在经过长期验证的 C 代码上稳如磐石。这种“双轨并行”的过渡方案,是大型开源项目在技术转型期非常稳健的做法。

背景链接:
https://www.phoronix.com/ne...

0 条回复

暂无回复,快来抢沙发吧!

  • 1 / 1 页
敬请注意:文中内容观点和各种评论不代表本网立场!若有违规侵权,请联系我们。