How can I find the places of system calls of my program?

Posted by Lucky Man on Stack Overflow See other posts from Stack Overflow or by Lucky Man
Published on 2012-04-05T10:37:20Z Indexed on 2012/04/05 11:29 UTC
Read the original article Hit count: 301

Filed under:
|
|

From strace manual:

-i Print the instruction pointer at the time of the system call. 

I straced my programm:

strace -i prog

As a result I got a lot of system calls. One of them:

[000da49c] open("./rabbit.o", O_RDONLY) = 3

But disassembled instruction at this address of prog doesn't call any syscall (hte editor):

da49c !   mov         r7, ip                          

What is wrong? How can I find the places of system calls of my program?

P.S. Architecture of my device doesn't support GDB-command catch syscall.

© Stack Overflow or respective owner

Related posts about linux

Related posts about debugging