摘自strace手册:
-i Print the instruction pointer at the time of the system call. 我终止了我的程序:
strace -i prog结果,我收到了很多系统调用。其中之一:
[000da49c] open("./rabbit.o", O_RDONLY) = 3但是prog这个地址的反汇编指令不会调用任何syscall (hte编辑器):
da49c ! mov r7, ip 怎么啦?如何找到我的程序的系统调用的位置?
附注:我的设备架构不支持GDB-command catch syscall。
发布于 2012-04-05 19:25:31
引用"strace“手册页的Bugs部分:
The -i option is weakly supported.另一个可能对您有帮助的提示是:您看过前面的代码了吗?在发出它的点上的IP已经指向系统调用之后的下一条指令。所以你应该在da49c之前检查指令。
https://stackoverflow.com/questions/10027013
复制相似问题