【问题标题】:ltrace and gdb attach to same processltrace 和 gdb 附加到同一进程
【发布时间】:2018-06-05 21:47:03
【问题描述】:

是否可以同时使用ltracegdb?我有一个小型剥离二进制程序,我想在其中查看变量内容,我可以使用ltrace 看到一些库调用。

是否有可能将 gdb 和 ltrace 附加到同一个进程?

【问题讨论】:

标签: debugging gdb ltrace


【解决方案1】:

不可以,gdb 和 ltrace 都使用ptrace 来调试和跟踪进程,并且 tracee(目标)进程只能附加到单个 ptrace 跟踪器。

您可以尝试在 gdb 中使用 breakpoint function_nameb function_addr 实现一些调用跟踪,获取断点 id 并添加 gdb commands to execute at this breakpoint,例如对于编号为 1 的断点:

  commands 1
  bt 2
  p/x $rax
  continue 

gdb 将打印回溯 (bt) 和 rax 寄存器值,然后将 continue 执行(更多示例和禁用分页在 What are the best ways to automate a GDB debugging session?)。

或者您可以尝试像sysdig 这样的内核跟踪解决方案。

【讨论】:

  • 嘿@osgx,我有一个有趣的建议给你。你认为你可以给我发一封电子邮件:s@lambdal.com 吗?我知道这不是合适的论坛,但我在任何地方都找不到您的联系信息。干杯。
  • @sabalaba,哪种提议? CID 密钥:980ee28f810afceb
猜你喜欢
  • 2017-12-23
  • 2015-02-19
  • 2015-09-21
  • 1970-01-01
  • 2011-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多