linux上trace code的几种方法

我们在看代码时,总是会遇到下面问题:

1.查看某个场景下的代码执行流

2.查看某个函数被执行时的routine

但是,如果直接查看源码,源码可能代码量大,且分支多,不容易理清。就需要让相关程序运行起来查看。


1.无侵入方式(不修改源码)

BCC (linux kernel和userspace均可用)

bpftrace

Ftrace

  • function-graph tracer
  • function tracer
  • stack tracer

strace(查看系统调用)

gdb

2.侵入方式(修改源码)

  • 添加打印log
  • 打印stack - 如:linux kernel中的dump_stack()
相关推荐
淮北4944 分钟前
计算机网络学习(六、应用层)
linux·学习·计算机网络
宇钶宇夕11 分钟前
西门子 S7-200 SMART PLC 实现星三角降压启动控制:原理、案例与完整程序
运维·自动化
lew-yu29 分钟前
【已解决】Linux中程序脚本可以手动执行成功,但加在rc.local中不能开机自启
linux·服务器
小薛博客30 分钟前
22、Jenkins容器化部署Java应用
java·运维·jenkins
ZLRRLZ31 分钟前
【Docker】Docker基础
运维·docker·容器
ajassi200031 分钟前
linux C 语言开发 (四) linux系统常用命令
linux·运维·服务器
小嵌同学35 分钟前
Linux:malloc背后的实现细节
大数据·linux·数据库
小马哥编程1 小时前
如何在路由器上配置DHCP服务器?
服务器·网络·智能路由器
EveryPossible1 小时前
如何终止画图
linux·编辑器·vim
荣光波比1 小时前
Shell 秘典(卷十)—— 服务器资源自动化监控脚本的设计与实现
运维·服务器·自动化·云计算