1 个不稳定版本

0.1.0 2020年7月12日

#761操作系统

MIT/Apache

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许可证定义,将根据上述方式双重许可,不附加任何额外条款或条件。

许可证

以下两种许可证之一授权

任选其一。

依赖关系

~1.5MB
~36K SLoC