Hubris 一个轻量级的、受内存保护的、用于深度嵌入式系统的消息传递内核。是由 Oxide Computer Company 开发的微控制器操作系统,为具有可靠性要求的深度嵌入式系统设计。它的设计最初是在 RFD41 中提出的,但现在已经有了很大的发展。
目前支持 Linux 和 Windows 作为 first-tier platforms。该版本可能也适用于 Illumos 和 Mac;如果有人想加强对这些架构的支持和持续构建,官方表示其很乐意提供帮助。
Hubris 提供抢占式多任务处理、单独编译的组件之间的内存隔离、隔离崩溃的驱动程序并在不影响系统其余部分的情况下重新启动它们的能力,以及灵活的组件间消息传递,消除了对大多数系统调用的需要——大约 2000 行 Rust。Hubris 调试器 Humility 允许我们走近正在运行的系统并检查所有任务的交互,或捕获转储以进行离线调试。
此外,Hubris 在运行时没有创建或销毁任务的操作、没有动态资源分配、没有以特权模式运行的驱动代码、系统中也没有 C 代码。从结构上看,这消除了类似系统中通常存在的很多攻击面。
评论