,,Linux应用调试之strace命令详解

,,Linux应用调试之strace命令详解

Strace通常用于跟踪系统调用和进程执行时收到的信号。下面是本文中用于Linux应用程序调试的strace命令。有需要的请参考。

1.strace简介

Strace通常用于跟踪系统调用和进程执行时收到的信号。通过strace,可以知道应用程序打开了哪些文件,读写了哪些内容,包括消耗的时间和返回值。在Linux世界中,进程不能直接访问硬件设备。当进程需要访问硬件设备时(比如读取磁盘文件,接收网络数据等。),它们必须从用户态切换到内核态,通过系统调用访问硬件设备。Strace可以跟踪进程生成的系统调用,包括参数、返回值和执行时间。

2.安装strace命令

首先,你需要以下两个文件:

strace-4.5.15.tar.bz2

strace-fix-arm-bad-syscall . patch

步骤如下:

#tar -xjf strace-4.5.15.tar.bz2

#cd strace-4.5.15/

#补丁-p1./strace-fix-arm-bad-syscall . patch

//"P1 "值删除补丁的第一个路径" "指补丁文件的位置,而"./”是指返回上一个目录。

#./configure-host=arm-Linux cc=arm-Linux-gcc//configure配置

#make //生成strace命令文件

然后把strace命令文件放到我们开发板的根目录/bin下,就可以使用了。

# CPS trace/nfs _ root/bin//NFS _ root:开发板的NFS系统根目录。

3.strace命令使用

常见参数如下:

-o指定跟踪信息的输出文件。

-t记录跟踪信息的时间,单位为秒。

-记录追踪信息的tt时间,美国

4.实例

通过strace测试led_text应用程序

#insmod led.ko //负载led驱动器

# strace -o log.txt。/led_text led1开启

//测试led_text应用程序,打开led1,将跟踪信息输出到log.txt

log.txt的内容如下:

总结

以上是边肖介绍的用于Linux应用程序调试的strace命令的详细说明。希望对你有帮助。如果您有任何问题,请给我留言,边肖将及时回复您。非常感谢您对我们网站的支持!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: