闻茂泉--基于libbpf库的ebpf构建方案_第二届eBPF开发者大会报告.pdf

编号:161336 PDF 32页 1.20MB 下载积分:VIP专享
下载报告请您先登录!

闻茂泉--基于libbpf库的ebpf构建方案_第二届eBPF开发者大会报告.pdf

1、基于libbpf库的eBPF编程方案第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m中 国 西 安主讲人:闻茂泉2024-04-13目录Content01eBPF编程方案简介02基于libbpf的编程方案03改进的libbpf编程方案04低版本内核编程方案05低版本编译环境编程方案第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m01eBPF编程方案简介第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m中 国 西 安主流的C语言实现的eBPF编程方案代际方案指称识别方法备注第1代

2、bpf_load.c文件方案代码中有bpf_load.c文件,还有load_bpf_file函数。Linux 4.x 系列早期内核版本的源码实例大多基于此文件,这个旧 API 方案已经在内核中被逐步废弃。第2代原生libbpf库方案代码中有libbpf.c文件Linux 5.x版本内核的源码实例很多使用以libbpf.c为核心的原生libbpf库方案,是本文重点阐述的方案。第3代libbpf-bootstrap骨架方案代码中除了libbpf.c文件,还有libbpf-bootstrap、skeleton和*.skel.h关键词最新版本内核的源码实例已经开始采用此方案。业界最新的eBPF介绍文章

3、较多基于此方案。1.更深的控制和灵活性:直接使用原生libbpf 库的方案意味着可以与更底层交互,实现更多的控制,定制加载和管理 eBPF 程序和 maps 过程,满足更复杂的需求。2.更好的学习和理解:libbpf-bootstrap封装抽象屏蔽了很多细节,直接使用原生libbpf可以对 eBPF 子系统有更深入的理解,有利于开发者对 eBPF 内部工作原理的理解。3.更细粒度的依赖管理:直接使用原生libbpf库能够指定依赖的 libbpf 库版本和功能,进而更精细化地管理项目依赖关系。4.更好的低版本内核适应性:基于原生libbpf库的方案,在低版本操作系统发行版和低版本内核上可以有更好

4、的兼容性。原生libbpf库eBPF编程方案的一些独特优势:最大硬伤:写死C语言eBPF编程的基础环境准备rpm包基础环境初始化deb包基础环境初始化推荐发行版Anolis 8.8、CentOS 8.5、Kylin V10、Fedora 33及以上Debian 12、Ubuntu 21.04及以上编译工具和依赖库包yum install clang llvm elfutils-libelf-develapt-get updateapt install clang llvm libelf-dev基础包yum install git makeapt install git make用户态头文件yu

5、m install kernel-headers-$(uname-r)apt install linux-libc-devbpftool工具yum install bpftool-$(uname-r)apt install linux-tools-common linux-tools-$(uname-r)主流的linux发行版大多是基于rpm包或deb包的包管理系统。不同的包管理系统,初始化eBPF开发环境时所依赖的包,也略有差别。C语言eBPF编程方案的程序架构execve.cexecve.bpf.c (execve_kern.c)execve.cexecve.bpf.cexecve.bpf

6、.oexecve.skel.hexecveexecve.bpf.o (execve_kern.o)execveexecve.bpf.o (execve_kern.o)./execve./execve第1代,第2代编程方案第3代编程方案编译过程执行过程实时读取02基于libbpf的编程方案第二届 eBPF开发者大会w w w.e b p f t r a v e l.c o m中 国 西 安Talk is cheap.Show me the code.trace_execve_libbpf130是一个基于libbpf库的第2代eBPF构建实例。eBPF初学者,可以考虑选择跟踪 execve 系统调

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(闻茂泉--基于libbpf库的ebpf构建方案_第二届eBPF开发者大会报告.pdf)为本站 (张5G) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
客服
商务合作
小程序
服务号
折叠