首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用strace和ltrace进行调试

使用strace和ltrace进行调试
EN

Stack Overflow用户
提问于 2017-04-13 02:23:38
回答 1查看 855关注 1票数 0

我的程序挂起了,我决定ltracestrace它。

代码语言:javascript
复制
strace -p pid

在屏幕上给我一个“无限”打印:

代码语言:javascript
复制
lseek(3, 57114624, SEEK_SET)            = 57114624
read(3, "\r\r\207\0\n\6O\0\16b\f\277\v\370\v1\ni\tm\10\245\7\335\7\25\6O\5v\5v"..., 4096) = 4096
lseek(3, 57118720, SEEK_SET)            = 57118720
read(3, "\r\1(\0\21\0`\0\0174\16l\r\246\f\336\f\26\vO\n\207\t\277\10\371\6\233\5\323\5\v"..., 4096) = 4096
...

ltrace -p pid提供了同样的“无限”打印:

代码语言:javascript
复制
memcmp(0x12efab68, 0x12eface8, 15, 0x12eface8)                                      = 0xfffffff8
memset(0x12fa48e0, '\0', 72)                                                        = 0x12fa48e0
memset(0x12fa4928, '\0', 144)                                                       = 0x12fa4928
lseek64(3, 0x2c30000, 0, 0x2c30000)                                                 = 0x2c30000
memcpy(0x12efab68, "DIRAC.HLTFarm.lhcb", 18)                                        = 0x12efab68
memcmp(0x12efab68, 0x12eface8, 15, 0x12eface8)                                      = 0xfffffff8
memcpy(0x12efab68, "DIRAC.HLTFarm.lhcb", 18^C)                                        = 0x12efab68

基于这些结果,我可以对程序所发生的事情做出什么结论?

EN

回答 1

Stack Overflow用户

发布于 2017-07-17 16:06:34

附加调试器(使用gdb -p pid)并获取回溯(使用bt命令)。这将更详细地告诉你程序在哪里旋转。您可能需要安装调试信息才能获得有用的回溯。

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

https://stackoverflow.com/questions/43376954

复制
相关文章

相似问题

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