Systemd 现在支持用 Rust 进行组件开发。

systemd 系统管理器代码库已进行更改,新增了使用 Rust 创建组件的功能。Rust 仅用于开发新组件,目前没有计划用 Rust 重写现有的 C 代码。构建过程中不再使用 cargo 包管理器,仅保留 Meson 构建系统。Rust 代码以“no_std”模式(不使用标准库)运行,仅允许使用 core、alloc 和 libc 库。

systemd 的 Rust 组件动态链接到 libsystemd-shared C 库。libsystemd-shared 的 Rust 绑定在构建时使用 bindgen 工具从头文件自动生成,并以 systemd_shared 包的形式提供给 Rust 程序。这至少需要 rustc 1.85 和 bindgen 0.71.1,与以下版本相对应: Debian 13.

使用 LTO 优化构建的 Rust 测试可执行文件占用 32 KB,而等效的 C 代码仅占用 20 KB。默认情况下,仅当系统上存在相应的 Rust 工具链时(-Drust=auto),才会启用 Rust 支持。目前正在开发第一个用 Rust 编写的组件 systemd-keyring-setup,该组件尚未被合并到 systemd 主代码库中。systemd-keyring-setup 旨在配置和管理内核机制的 X.509 证书。 Linux dm-verity、fs-verity 和 bpf。

来源: opennet.ru

为具有 DDoS 保护、VPS VDS 服务器的站点购买可靠的主机 🔥 购买具备 DDoS 防护的可靠网站托管服务,包括 VPS 和 VDS 服务器 | ProHoster