zoukankan      html  css  js  c++  java
  • Linux应用调试-strace命令

    1.strace简介

    strace常用来跟踪进程执行时的系统调用和所接收的信号。通过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/
    
    #patch -p1 <../strace-fix-arm-bad-syscall.patch
    //“p1”值去掉补丁的第一个路径 “<”指补丁文件位置,“../” 指返回上个目录
    
    #./configure --host=arm-linux  CC=arm-linux-gcc         //配置configure
    
    #make                                                   //生成strace命令文件

    然后将strace命令文件,放入我们开发板的根目录/bin中,便能使用了

    #cp  strace  /nfs_root/bin/          //nfs_root:开发板的nfs系统根目录

    3.strace命令使用

    常用参数如下所示:

    • -o    指定跟踪信息的输出文件        
    • -t     记录跟踪信息的时间,以S为单位
    • -tt    记录跟踪信息的时间,以uS为单位

    4.实例

    通过strace来测试led_text应用程序

    #insmod led.ko                   //装载led驱动
    # strace  -o log.txt  ./led_text led1 on            
              //测试led_text应用程序,打开led1,并将跟踪信息输出到log.txt中

    其中log.txt的内容如下所示:

     

     

  • 相关阅读:
    开博了,将会定期更新博客
    C++实验二
    C++实验三
    c++第八章课后题
    c++第八章复数运算
    我的第一篇Window Live Writer日志
    Item 3: Prefer the is or as Operators to Casts(选择is或者as操作符而不是做强制类型转换)
    C# 中list的排序
    CodeSmith的应用
    using 关键字
  • 原文地址:https://www.cnblogs.com/lifexy/p/8034041.html
Copyright © 2011-2022 走看看