Gre*_*reg 4 memory gtk strace ubuntu-10.04
我有一个在Ubuntu 10.04上运行的GTK程序挂起可中断状态,我想了解输出strace.特别是,我有这条线:
read(5, 0x2ba9ac4, 4096) = -1 EAGAIN (Resource temporarily unavailable)
Run Code Online (Sandbox Code Playgroud)
我怀疑5是文件描述符,0x2ba9ac4要读取的文件中的地址以及要读取4096的数据量.你确定吗?更重要的是,如何确定程序尝试读取哪个文件?此文件描述符不存在/proc/pid/fd(这可能是程序挂起的原因).
您可以通过调用找到使用此文件描述符的文件strace -o log -eopen,read yourprogram.然后在log文件中搜索read感兴趣的调用.从该行(而不是文件的第一行),向上搜索此文件描述符的第一个匹配项(通过调用返回open).
例如,返回的文件描述符open是3:
open("/etc/ld.so.cache", O_RDONLY) = 3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6515 次 |
| 最近记录: |