#kernel #rtos #post

nightly bin+lib rusty-os

Rusty-OS 是一个用 Rust 编写的简单嵌入式系统内核

3 个版本 (稳定版)

1.1.0 2023年4月30日
1.0.0 2023年4月27日
0.1.0 2021年5月10日

#1504嵌入式开发

MIT/Apache

66KB
265

crates.io crates.io

rusty-os

Rusty-OS 是一个简单的针对基于 ARM 的嵌入式系统的 RTOS,用 Rust 编写。

这个操作系统基于 Philip Oppermann 的系列文章,可以去查看他的 博客github 以了解如何使用 Rust 构建操作系统。

文档

许可协议

许可协议如下

任选其一。

平台支持

支持不同平台("目标")

目标 备注
x86_64 QEMU x86 64 位

未来工作包括添加对其他平台的支持。ARM 的支持正在进行中。

构建

此项目需要 Rust 的最新 nightly 版本,因为它使用了一些不稳定的功能。至少需要 nightly 2020-07-15 版本才能构建。您可能需要运行 rustup update nightly --force 来更新到最新 nightly 版本,即使某些组件(如 rustfmt)可能缺失。

您可以通过运行以下命令来构建项目:

$ cargo build

要从编译的内核创建可引导磁盘镜像,您需要安装 bootimage 工具

$ cargo install bootimage

安装后,您可以通过运行以下命令创建可引导磁盘镜像:

$ cargo bootimage

这将在 target/x86_64/debug 目录中创建一个可引导磁盘镜像。

运行

$ cargo run

[QEMU] 和 bootimage 工具都需要安装。

贡献

接受贡献。请确保提交合并请求。

除非您明确说明,否则根据Apache-2.0许可定义的,您有意提交以包含在工作中的任何贡献,都应如上双许可,不附加任何其他条款或条件。

注意

这是一个学习RTOS设计内部组件和使用Rust进行ARM处理器低级开发的兴趣项目。由于Rusty-OS是一个兴趣项目,所以不能与Zephyr Project、FreeRTOS、QNX等主流RTOS相提并论。再次,特别感谢Phillip Oppermann通过他的工作为其他嵌入式软件爱好者铺平道路。“站在巨人的肩膀上”。

依赖项

~795KB
~14K SLoC