6个版本
新版本 0.7.0 | 2024年8月22日 |
---|---|
0.6.2 | 2024年7月9日 |
0.6.0 | 2024年6月29日 |
0.1.5 |
|
#60 in 操作系统
124 每月下载量
175KB
4K SLoC
使用Asterinas OSDK加速操作系统开发
它是做什么的?
OSDK(操作系统开发套件)旨在简化Rust操作系统的开发。它通过利用由Asterinas最初提出的framekernel架构来简化流程。
cargo-osdk
是一个命令行工具,用于简化基于framekernel架构的项目管理。与Rust项目的Cargo类似,cargo-osdk
允许方便地进行构建、运行和测试项目。
安装工具
要求
目前,cargo-osdk
仅支持x86_64 ubuntu系统。
要使用QEMU运行内核,cargo-osdk
需要安装以下工具
- Rust >= 1.75.0
- cargo-binutils
- gcc
- qemu-system-x86_64
- grub-mkrescue
- ovmf
- xorriso
有关如何安装Rust的说明,您可以参考官方网站。
安装Rust后,您可以通过以下方式安装Cargo工具
cargo install cargo-binutils
其他工具可以通过以下方式安装
apt install build-essential grub2-common qemu-system-x86 ovmf xorriso
安装
然后,可以通过以下方式安装cargo-osdk
cargo install cargo-osdk
升级
如果已经安装了cargo-osdk
,可以通过以下方式升级该工具
cargo install --force cargo-osdk
入门
在此,我们提供了一个简单的示例,演示如何使用cargo-osdk
创建和运行一个简单的内核。
使用cargo-osdk
,可以通过一条命令创建一个内核项目
cargo osdk new --kernel my-first-os
然后,您可以使用以下命令运行内核
cd my-first-os && cargo osdk run
您将在控制台看到Hello world from guest kernel!
。
基本用法
cargo-osdk
的基本用法是
cargo osdk <COMMAND>
目前我们支持以下命令
- new:创建一个新的内核包或库包
- build:编译项目及其依赖项
- run:使用VMM运行内核
- debug:通过GDB调试远程目标
- 测试:通过启动虚拟机来执行内核模式单元测试。
- 检查:分析当前包并报告错误。
- clippy:检查当前包并捕获常见错误。
- doc:构建Rust文档。
以下命令可用于发现每个命令的可用选项。
cargo osdk help <COMMAND>
OSDK清单
cargo-osdk
使用名为 OSDK.toml
的配置文件来定义其精确行为。有关清单规范的更多信息,请参阅 此书。
贡献
Asterinas OSDK 作为 Asterinas 的子项目开发。它与内核共享相同的仓库和版本规则。请根据 Asterinas 的贡献指南为 OSDK 做贡献。
Visual Studio Code 用户注意事项
要启用 OSDK 的编辑器高级功能,请使用 文件 > 从文件打开工作区...
菜单项打开 Asterinas 仓库作为工作区,并将 Asterinas 仓库根目录中的 .code-workspace
文件作为配置。
依赖项
~7–9.5MB
~166K SLoC