Linux调试工具strace和gdb常用命令小结_第1页
Linux调试工具strace和gdb常用命令小结_第2页
Linux调试工具strace和gdb常用命令小结_第3页
Linux调试工具strace和gdb常用命令小结_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 strace 和 gdb 是 Linux 环境下的两个常用调试工具,这里是个人在使用过程中对这两个工具常用参数的总结,留作日后查看使 用。strace 调试工具strace 工具用于跟踪进程执行时的系统调用和所接收的信号,包括参数、返回值、执行时间。在 Linux 中,用户程序要访问系 统设备,必须由用户态切换到内核态,这是通过系统调用发起并完成的。strace 常用参数:-c 统计每种系统调用执行的时间、调用次数、出错次数,程序退出时给出报告-p pid跟踪指定的进程,可以使用多个 -p 同时跟踪多个进程-o filenamestrace 默认输出到 stdout , -o 可以将输出写入

2、到指定的文件-f 跟踪由 fork 产生的子进程的系统调用-ff 常与 -o 选项一起使用,不同进程 (子进程 产生的系统调用输出到各个 filename.pid 文件中-F 尝试跟踪 vfork 子进程系统调用,注意:与 -f 同时使用时 , vfork不被跟踪-e expr输出过滤表达式,可以过滤掉不想输出的 strace 结果-e trace=set指定跟踪 set 中的系统调用-e trace=network跟踪与网络有关的所有系统调用-e strace=signal跟踪所有与系统信号有关的系统调用-e trace=ipc跟踪所有与进程通讯有关的系统调用-e signal=set指定跟

3、踪 set 中的信号-e read=set输出从指定文件中读出的数据,例如 -e read=3,5-e write=set输出写入到指定文件中的数据,例如 -e write=1-r 打印每一个系统调用的相对时间-t 在输出中的每一行前加上时间信息-tt 在输出中的每一行前加上时间信息,时间精确到微秒级-ttt 在输出中的每一行前加上时间信息,输出为相对时间-s 指定每一行输出字符串的长度(默认为 32strace 使用举例:strace -t whoami #跟踪 whoami 可执行程序,每行输出结果前打印执行的时间strace -p 17151 -p 17152 -p 17153 #同时跟

4、踪进程 17151、 17152、 17153strace -f -e trace=read,write -p 17151 -o log #跟踪进程 17151及子进程中 read 和 write 系统调用,输出到 log 文件gdb 调试工具GDB 是 GNU 开源组织发布的一个强大的 UNIX 下的程序调试工具。 gcc 编译时加上 -g 参数,可以使可执行程序加上 gdb 调试 信息。(1 info简写:i ,列出 gdb 子命令的信息,如 info break, info variables, info stack等。(2 list file:function简写:l ,查看当前行的上下文,默认为 10行,也可以设置在某个函数处列出源码。(3 edit file:function简写:e ,编辑当前所在的行,也可以编辑某个函数的源码。(4 break file:function简写:b ,设置断点,可以设置在某行或某个函数处。(5 run arglist简写:r ,运行程序至断点处停住, run 命令之后可以加上调试程序需要的参数。(6 next简写:n ,单条语句执行。(7 continue简写:c ,继续运行程序至下一个断点。(8 print简写:p ,打印变量的值。(9 bt查看函数堆栈信息。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论