找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

5132

积分

0

好友

696

主题
发表于 3 小时前 | 查看: 4| 回复: 0

RustSBI 安全引导程序封面

大家好。距上一版本发布已逾一年,RustSBI 社区荣幸地带来 0.4.1 版本。
本次更新重点面向在轨卫星、边缘计算等高安全、高可靠场景,在巩固经典的操作系统实验等应用的同时,也为 SBI 固件相关学术研究提供了验证平台。
rustsbi crate 本身外,sbi-specsbi-rtsbi-testing 等依赖包也同步发布了新版本,并且 riscv-aia 包已正式面世。
希望大家喜欢这些更新。以下是详细的更新日志。

更新日志

相比 0.4.0 版本,本次更新主要增加了各个 SBI 扩展的细节能力,迁移、升级了依赖包与工具链 edition,并对易用性和完整性做出了有效调整。  

请开发者注意:RustSBI 0.5.0 版本将对 PMU 模块的若干函数引入破坏性变更(breaking change)。使用该模块的软件在迁移到未来的 RustSBI 0.5.0 时需提前规划。

新增

  • CI:在 GitHub workflows 中增加了 check-changelogcheck-commit-signatures 检查步骤。
  • PMU:为 Pmu trait 补充了缺失的 snapshot_set_shmem 函数,并添加了相应测试用例。
  • PMU:为 &TOption<T>Forward 结构体实现了 snapshot_set_shmem
  • Forward:为 Forward 结构体派生 CopyDefaultPartialEqEqHash
  • PMU:标记 pmu_counter_config_matchingpmu_counter_startpmu_counter_stop 的签名将在 0.5.0 版本中发生破坏性变更。
  • lib:从 sbi-spec crate 中重新导出(re-export)CounterMask 结构体。

更改

  • 迁移 crate 至 Rust 2024 edition。
  • 升级依赖 riscv 至 0.16.0。
  • 完善 system_suspend 函数的文档说明。
  • 使用 Option::map_or 替换原有的 map + unwrap_or 模式。
  • 修正文档中指向 Prototyper 固件的链接。
  • 明确 SBI IPI 和 RFENCE 扩展中各错误码的含义。
  • 将文档示例中的 #[naked] 更新为 #[unsafe(naked)]

修复

  • 修正多处文档和注释中的拼写错误。

此外,本次更新还带来以下依赖包的首次发布或版本更新:

软件包更新

  • sbi-spec 0.0.9(新版本)
  • sbi-rt 0.0.4(新版本)
  • sbi-testing 0.0.3(新版本)
  • riscv-aia 0.0.0(首次发布)

贡献者与捐助者

本次新版本离不开众多社区成员的贡献,让我们由衷感谢下列贡献者。

  • Carlos Lopez
  • Chao Liu
  • DongQing, Rex Don
  • Grassedge, GrassedgeT
  • guttatus
  • hanbings
  • jackfiled
  • Jiefeng Li
  • JingXuan_Wei, JensenWei007
  • Longbing Zheng
  • LunaRain_079
  • lurenjia1213
  • manbo1234
  • manchangfengxu
  • Mechanicu
  • Nelson Boss
  • nitrospeeder
  • Nowherechan
  • Panda Jiang
  • Polardist
  • polypopopo
  • primercoder
  • Ricardo Ren
  • rmsyn
  • Stone Simpson
  • wan9fe
  • Woshiluo Luo
  • Xiangbo Zhang
  • xiaobor123
  • xuanh08
  • Yu Chongbing
  • yzs
  • Zhenchen Wang, Plucky923
  • Zhouqi Jiang, Luo Jia
  • Zongyao Chen, Solar1s., chenzongyao200127
  • 炽热金刚

RustSBI 0.4.1 版本的开发过程受到了社区热心伙伴的赞助,让我们感谢以下开源赞助者(按赞助次序排序)。

RustSBI 0.4.1 贡献者及赞助者头像

安装方法

随着 RustSBI 0.4.1 的发布,RustSBI Prototyper 项目的正式版也将提上日程。RustSBI Prototyper 是运行在 M-mode 的 SBI 固件。
目前,安装 RustSBI Prototyper 需要从源码编译运行:

$ git clone git@github.com:rustsbi/rustsbi.git
$ cargo prototyper

RustSBI Prototyper 可以在多个 C 或 Rust 引导生态链中直接替换 OpenSBI,例如 U‑Boot 等。  

此外,RustSBI 库已发布至 crates.io。若您使用 RustSBI 库开发虚拟化、模拟器等应用,可通过以下方式引入:

[dependencies]
rustsbi = "0.4.1"

结束语

感谢您对 RustSBI 的支持,愿您的每次系统引导都开启全新、美好的一天。  

欢迎继续在 GitHub 上关注我们的项目及后续进展:https://github.com/rustsbi/rustsbi




上一篇:Bun主线合并Rust重写,Zyx ML与Scena 3D同日亮相
下一篇:RISC-V零阶段引导程序详解:硬件启动的第一棒是如何交接的?
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-5-16 23:54 , Processed in 0.793504 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表