首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用gdb列出来自Linux核心转储的进程下的所有进程和线程

使用gdb列出来自Linux核心转储的进程下的所有进程和线程
EN

Stack Overflow用户
提问于 2011-03-09 21:04:00
回答 2查看 2.5K关注 0票数 2

我正在为gdb/linux核心转储开发一个脚本工具,如果我将脚本指向核心凹凸,它会列出所有进程下所有线程的堆栈跟踪,也就是说,我试图实现的gdb相当于windbg的!进程0,它从转储中转储所有具有堆栈的进程和线程。

有没有gdb等价物!进程0?

如果不是

从核心转储中列出所有进程并列出gdb中进程下的所有线程的gdb命令是什么?

这将使我能够编写一个脚本来循环所有的pid和tid,并获得一个可以记录到文件中的回溯?

还有关于脚本语言的建议,比如perl/python,更好的是受欢迎的。

感谢Ganesh

EN

回答 2

Stack Overflow用户

发布于 2011-03-09 21:13:53

这将为您提供所有线程的回溯跟踪,以及所有帧上的所有局部变量:

(gdb) thread apply all bt full

我不认为单个核心文件会覆盖一个以上的进程。看看你的脚本选项的GDB documentation吧。

票数 2
EN

Stack Overflow用户

发布于 2011-03-11 07:17:53

您最好使用built 最新GDB版本Python解释器而不是thread apply all bt,而不是尝试解析GDB文本输出。

Nikolai是正确的,因为UNIX核心文件只涵盖一个进程(崩溃或被终止的进程)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5246185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档