Linux strace命令
简介 strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。 输出参数含义 root@ubuntu:/usr# strace cat /dev/ null execve( " /bin/cat ", [ " cat ", " /dev/null "], [ /* 22 vars */]) = 0 brk( 0) = 0xab1000 access( " /etc/ld.so.nohwcap ", F_OK) = - 1 ENOENT (No such file or directory) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, - 1, 0) = 0x7f29379a7000 access( " /etc/ld.so.preload ", R_OK) = - 1 ENOENT (No such file or directory) ... brk( 0) = 0xab1000 brk( 0xad2000) = 0xad2000 fstat(