跟踪点tracepoints介绍

一 功能

用来对内核进行静态插桩,我们可以在内核函数的特定逻辑位置处,放置插桩点。这些插桩点及其回调函数会被编译到内核镜像中

二 添加tracepoints及使用

不同版本内核,有不同的方式,如:

(1)TRACE_EVNET

(2)DECLARE_TRACE

具体可以参考如下文档:

https://elixir.bootlin.com/linux/v4.17.18/source/Documentation/trace/tracepoints.rst

tracepoint-analysis.rst - Documentation/trace/tracepoint-analysis.rst - Linux source code (v4.17.18) - Bootlin

如何使用 TRACE_EVENT() 宏来创建跟踪点_u012849539的博客-CSDN博客

三 操作接口

(1) 基于Ftrace, 通过/sys/kernel/debug/tracing/events操作各个跟踪点

(2)perf_event_open

四  跟踪点为BCC/bpftrace/systemTap等提供内核的静态插桩支持

注意与kprobes动态内核插桩的区别

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值