基于浪潮云启操作系统(InLinux)查看代码堆栈

背景

在操作系统中,使用fio工具测试磁盘性能时,当测试iops、带宽、延时等数据时,需要对fio的参数做相应的调整。如果想了解这些参数的含义,就需要对fio的代码实现做相应的了解,通过查看函数调用堆栈是快速了解fio代码的有效途径。
接下来讲解,如何基于浪潮云启操作系统(InLinux)查看fio的调用堆栈。

工具

GDB工具是支持C、C++、GO等多种语言调试的工具,并支持基于进程调试代码,可以查看代码调用堆栈,并支持查看代码调用参数等内容。
为了便于查看fio的堆栈源码,需要安装glibc、libaio的debuginfo包。

yum install glibc-debuginfo
yum install libaio-debuginfo

操作系统

在这里插入图片描述

定位代码堆栈

调试fio

gdb /usr/bin/fio

设置断点

在这里插入图片描述

运行fio命令

在这里插入图片描述

查看fio进程

在这里插入图片描述

GDB加载fio进程

在这里插入图片描述

查看每个thread的调用堆栈

在这里插入图片描述

查看堆栈对应源代码

在这里插入图片描述

s命令进入断点函数,n命令调试下一行

在这里插入图片描述

c命令跳出当前函数,进入上次调用函数(上层堆栈函数)

在这里插入图片描述

n命令调试下一句代码,info args查看参数,info locals查看上下文内容

在这里插入图片描述

查看断点使用情况

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值