RustSBI
rust实现的Supervisor二进制接口,运行在M-mode。
这个项目最初是Code 2020活动的rCore Summer的一部分。现在它能够在广泛支持的RISC-V设备上运行rCore-Tutorial和其他操作系统。
Github 链接,https://github.com/luojia65/rustsbi
如何编写健康的rust宏
健康宏(Macro hygiene)是宏一个概念,支持在所有的上下文中工作。他们不影响周围,也不受周围任何事物的影响。理想情况下,所有的宏都是完全健康的,但是有很多陷阱使得很容易意外地编写不健康的宏。
了解module模块。
首先,稍微讲一下Rust模块系统的细节,特别是路径;以后了解这个很重要。
文章链接,https://gist.github.com/Koxiaet/8c05ebd4e0e9347eb05f265dfb7252e1
event-emitter-rs
一个简单的时间通知实现。
允许您订阅带有回调的事件,并触发这些事件。事件的形式是(字符串、值),回调是接受值参数的闭包形式。
代码示例
use event_emitter_rs::EventEmitter;
let mut event_emitter = EventEmitter::new();
// This will print <"Hello world!"> whenever the <"Say Hello"> event is emitted
event_emitter.on("Say Hello", |value: ()| println!("Hello world!"));
event_emitter.emit("Say Hello", ());
// >> "Hello world!"
Github 链接,https://github.com/Dylan-Kerler/event_emitter_rs
Rust的move/copy/drop语义和数据归零的陷阱
我们在BitBox02硬件的固件中广泛使用rust。在这样的安全设备中,您不希望将敏感材料留在内存中超过必要的时间。特别是,当删除该值时,应该用零安全地覆盖内存,以减少内存泄漏的风险。zeroize是一个包,被设计使这项任务容易和安全。
文章链接,https://benma.github.io/2020/10/16/rust-zeroize-move.html
From 日报小组 TOM
社区学习交流平台订阅:
评论区
写评论赞赞