strace工具跟踪系统调用和信号
2011-09-17 11:36
736 查看
* 掌握使用strace工具跟踪系统调用和信号的方法
* 掌握各类内存测试工具,比如memwatch(是不是和那个)
* 掌握使用库函数backtrace和backtrace_sysbols来定位段错误
一、使用strace工具跟着系统调用和信号
1、strace介绍和移植
①、介绍
strace是一个很有用的真的、学习、调试工具。使用时无需重新编译程序,这使得可以用来跟踪没有源代码的程序。系统调用和信号时发生在用户空间和内核空间边界处的事件,检查这些边界事件有助于隔离错误、检查完整性、跟踪程序。
使用strace工具来执行程序时,它会记录程序执行过程中的调用的系统调用、接受到的信号。通过查看记录结果,可以知道程序打开了哪些文件(open)、打开是否成功、对文件进行了哪些读写操作(read、write、ioctl等)、影射了哪些内存(mmap)、向系统申请了多少内存等。
②、strace的移植。
下载 strace-4.5.15.tar.bz2,和arm平台补丁程序strace-fix-arm-bad-syscall.patch
#tar
#cd
#patch -p1 < ../strace-fix-arm-bad-syscall.patch
然后,编译
#./configure --host=arm-linux CC=arm-linux_gcc
#make
这时,将在目录下生成名为strace的可执行程序,将它直接复制到开发板根文件系统上既可使用。
2、strace调试程序。
①、使用strace定位警告信息
#strace -o xxx.log xxx &
这样将会在本目录下生成xxx.log文件。
②、使用strace 来测量程序的执行时间。当不知道程序在哪里突然执行时间过长时。
#strace -r -o xxx.log xxx
* 掌握各类内存测试工具,比如memwatch(是不是和那个)
* 掌握使用库函数backtrace和backtrace_sysbols来定位段错误
一、使用strace工具跟着系统调用和信号
1、strace介绍和移植
①、介绍
strace是一个很有用的真的、学习、调试工具。使用时无需重新编译程序,这使得可以用来跟踪没有源代码的程序。系统调用和信号时发生在用户空间和内核空间边界处的事件,检查这些边界事件有助于隔离错误、检查完整性、跟踪程序。
使用strace工具来执行程序时,它会记录程序执行过程中的调用的系统调用、接受到的信号。通过查看记录结果,可以知道程序打开了哪些文件(open)、打开是否成功、对文件进行了哪些读写操作(read、write、ioctl等)、影射了哪些内存(mmap)、向系统申请了多少内存等。
②、strace的移植。
下载 strace-4.5.15.tar.bz2,和arm平台补丁程序strace-fix-arm-bad-syscall.patch
#tar
#cd
#patch -p1 < ../strace-fix-arm-bad-syscall.patch
然后,编译
#./configure --host=arm-linux CC=arm-linux_gcc
#make
这时,将在目录下生成名为strace的可执行程序,将它直接复制到开发板根文件系统上既可使用。
2、strace调试程序。
①、使用strace定位警告信息
#strace -o xxx.log xxx &
这样将会在本目录下生成xxx.log文件。
②、使用strace 来测量程序的执行时间。当不知道程序在哪里突然执行时间过长时。
#strace -r -o xxx.log xxx
相关文章推荐
- 使用strace 工具跟踪系统调用和信号
- [译文] strace --- 系统调用跟踪与信号报告工具
- 使用strace工具跟踪系统调用和信号
- strace——linux下系统调用跟踪诊断工具
- strace —— 跟踪系统调用和信号
- strace命令_Linux strace 命令用法详解:跟踪系统调用和信号
- strace linux 下程序的系统调用和信号调用跟踪工具
- 系统调用跟踪工具strace && 手动调整内核printk打印级别
- 使用strace工具跟踪系统调用
- strace linux 下程序的系统调用和信号调用跟踪工具
- strace命令_Linux strace 命令用法详解:跟踪系统调用和信号
- strace linux 下程序的系统调用和信号调用跟踪工具
- strace linux 下程序的系统调用和信号调用跟踪工具
- 用strace工具跟踪系统调用
- ls -l |grep "^-"|wc -l 程序问题的定位—strace -p pid(跟踪系统调用)gdb -p pid(调试)lsof -p pid(查看当前进程打开的文件描述符) ps -e
- linux 系统调用跟踪---strace
- linux-系统调用01-strace工具的使用
- Linux strace 命令用法详解:跟踪系统调用和信号
- 利用strace ltrace或truss跟踪程序的系统调用
- HP unix 跟踪系统调用(类似linux下的strace)