3个稳定版本
新 1.0.2 | 2024年8月13日 |
---|
#102 in 调试
每月324次下载
17KB
299 代码行
☄️ Comet
为Starlight操作系统制作的调试工具
安装
使用Cargo ↗
使用Cargo(如果你在Starlight仓库中,你很可能已经有了它),Rust的包管理器,可以方便地安装和/或更新Comet。
cargo install starlight-comet
特性
-
🐛 Starlight Serial Output Debugging
简单地运行Comet,坐下来放松,抓取那些讨厌的虫子! -
🚀 Starship Integration
Comet与🚀 Starship ↗
集成,使🌟 Starlight ↗
的开发者能够通过UART上传新的Starlight构建。请注意,为了集成工作,你需要将Starship构建闪存到你的BOOT分区。 -
⏳ Starship Emulation with QEMU
Comet支持在子进程中运行QEMU ↗
,将串行STDIO管道到Comet的Starship集成,以保持调试工作轻松,即使对于Starship开发也是如此。
使用方法
comet debug
打开到
<PORT>
的串行连接,将数据发送到STDOUT
。设备类型前缀和消息发送到
STDERR
以实现互操作性。这些可以通过--quiet
完全删除。
Usage: comet debug [OPTIONS] --port <PORT>
Options:
-p, --port <PORT>
-q, --quiet
comet upload
打开到
<PORT>
的串行连接,将数据发送到STDOUT
。当读取到Comet二进制请求命令(由
🚀 Starship ↗
从设备发送)时,Comet将发送<FILE>
的内容回Starship以加载和执行。设备类型前缀和消息发送到
STDERR
以实现互操作性。这些可以通过--quiet
完全删除。
Usage: comet upload [OPTIONS] --port <PORT> --file <FILE>
Options:
-p, --port <PORT>
-f, --file <FILE>
-q, --quiet
comet test
启动一个QEMU进程(使用
--qemu-bin
来指定自定义的QEMU可执行文件)并带有指定的参数(--qemu-args
),创建一个虚拟串行连接,该连接映射到QEMU进程的STDIN
和STDOUT
。从Comet的角度来看,这是一个与其他串行连接类似的连接。QEMU的STDERR
继承Comet的STDERR
,并且不尊重--quiet
选项。如果设置了
--upload-file
,Comet将等待Comet二进制请求命令(由QEMU通过🚀 Starship ↗
发送)并将<FILE>
的内容发送回Starship以加载和执行。设备类型前缀和消息发送到
STDERR
以实现互操作性。这些可以通过--quiet
完全删除。
Usage: comet test [OPTIONS] --qemu-args <QEMU_ARGS>
Options:
-a, --qemu-args <QEMU_ARGS>
-b, --qemu-bin <QEMU_BIN> [default: qemu-system-aarch64]
-u, --upload-file <UPLOAD_FILE>
-q, --quiet
杂项
Comet和相关项目由@yolocat-dev ↗
设计和开发,尽管总是欢迎贡献!
Comet与其他存储库一样,采用Apache License 2.0许可。请随意阅读LICENSE ↗
文件中的实际法律条款。
依赖项
~6–15MB
~183K SLoC