eBPF/BCC编程

eBPF/BCC编程

一.系统跟踪内容梳理

以下的思维导图是根据:linux tracing和profiling概论这篇文章的部分内容,加上自己这周对eBPF/bcc编程的学习总结整理出来的。大体的框架思路,还会不断完善。
eBPF/BCC编程_第1张图片

二.eBPF/bcc编程

我在github上建了一个ebpfcode的仓库,记录了这周学习ebpf/bcc编程看过的比较好的资料和写过的代码,其中有些代码写了比较详细的注释,解释eBPF/bcc程序的结构,和一些接口函数的介绍。地址:ebpfcode仓库。
代码是边看边敲,敲的多了会发现很多的eBPF/bcc程序的结构是很清晰的,而且有时不止一种写法,敲的多了就见的多了,就会慢慢熟悉。

ebpfcode仓库:
eBPF/BCC编程_第2张图片

ebpfcode目录结构:
eBPF/BCC编程_第3张图片
代码主要是练习了一些系统跟踪常用的几个数据源,kprobes,uprobes,tracepoint,USDT。所以这些文件夹下面都是针对这些内容的练习。

代码注释1:
练习的时候我加了很多的注释在里面,下面的这个注释是解释eBPF/BCC程序的结构组成。还有kprobe__前缀的作用。
eBPF/BCC编程_第4张图片
代码注释2:
开头加了功能注释,还有用到的函数的解释。
eBPF/BCC编程_第5张图片
图表总结:
总结了一些代码中经常使用的BPF接口。
eBPF/BCC编程_第6张图片
markdown格式总结:
eBPF/BCC中关于python的总结:
eBPF/BCC编程_第7张图片
后面学习还会继续添加内容。

你可能感兴趣的:(ebpf,&,bcc)