1 个不稳定版本
0.1.0 | 2020年7月12日 |
---|
#761 在 操作系统
14KB
包含 (ELF 可执行文件/库, 21KB) tests/hello
Headcrab
现代Rust调试库。
目标
此项目的目标是提供一个现代的调试库,以便您可以构建针对应用程序的特定调试器。它将以现代操作系统和平台为开发重点。
您可以在以下博客文章中了解更多关于项目目标和背后的理由
路线图
项目第一阶段目标列表
- 模块化API和可扩展性。
- 读取和修改其他进程的内存并控制它们的执行(跨平台:Linux & macOS的x86_64)。
- Rust的基本符号化(读取DWARF调试信息并将符号转换为地址)。
- 获取进程线程信息。
- 读取和写入线程局部存储中的变量。
- 在给定位置设置断点。
长期目标
- Rust表达式解析器(重新使用Rust编译器中的MIR和其他组件)。
- 读取复杂的数据结构。
- 使符号化可重用于eBPF和动态跟踪。
- JSON-RPC和调试适配器协议支持。
- 命令行界面。
- 协作调试。
- 使用LLVM DExTer来提高用户体验。
- 支持更多平台和操作系统(Illumos, FreeBSD, OpenBSD, Windows)。
贡献
请遵循此项目的行为准则。
除非您明确声明,否则任何有意提交以包含在作品中的贡献,根据Apache-2.0许可证定义,将根据上述方式双重许可,不附加任何额外条款或条件。
许可证
以下两种许可证之一授权
- Apache许可证版本2.0,(LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
依赖关系
~1.5MB
~36K SLoC