如何调试ptrace tracee?

时间:2017-01-24 04:18:58

标签: gdb ptrace

我编写的程序涉及使用ptrace控制跟踪进程。当然,有错误:)为了修复我的错误,我希望能够用gdb检查跟踪状态。但是,gdb -p说:

warning: process X is already traced by process Y

如果我只使用PTRACE_DETACH,那么tracee将继续执行,直到我启动gdb,这可能会破坏我试图检查的状态。

非常感谢有关如何检查ptrace tracee的运行时状态(可能使用gdb以外的工具)的任何建议。

1 个答案:

答案 0 :(得分:1)

  

有关如何检查ptrace tracee

的运行时状态的任何建议

一种方法是让跟踪器实现GDB remote debugging protocol。其他文档here

同样this answer显示了如何在不恢复进程的情况下分离进程。