eBPF
eBPF
目录
高速入门eBPF
视频:https://www.bilibili.com/video/BV1LX4y157Gp
技术介绍
来源
1992 年论文:“The BSD pakcet filter: A New architecture for user-level packet capture”,即《BSD数据包过滤器:一种用于用户级数据包捕获的新体系结构》
最初,BPF是在BSD内核实现的,后来,由于其出色的设计思想,其他操作系统也将欺引入,包括Linux
BPF的实现有哪些

技术架构图

BPF运行时结构

eBPF相较于BPF的扩展内容


BPF 虚拟机与执行
编译、指令集
BPF不仅是一个指令集,还提供了一些工具

BPF指令集

字节码对虚拟机,相当于,机器码对X86或arm
BPF虚拟机与BPF指令集

BPF指令集与BPF字节码



eBPF指令格式

BPF虚拟机(内核解释器)

编译、加载、运行

注意这里的 BPF_PROG_LOAD型bpf()系统调用,后面要考
用户空间的BPF程序如何载入内核




BPF虚拟机执行的时机

BPF 系统调用:bpf()

BPF 描述符 (bpf_prog)、BPF程序类型、BPF存储类型
BPF描述符(bpf_prog)

BPF程序类型(Hook点)

BPF存储类型(Map)

BPF辅助函数

如何使用BPF:BPF编程
三种方式

BPF指令集编程

BPF C编程

BPF前端编程 - BCC


BPF学习资料

LMP







链接到当前文件 0
没有文件链接到当前文件