首页
›
嵌入式与底层系统
›
022-Linux内核性能观测与高级调试
›
《eBPF kprobe追踪系统调用 内核动态插桩方法》
VIP22
本课程属于:022-Linux内核性能观测与高级调试
嵌入式与底层系统 · 共 22 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
eBPF kprobe追踪系统调用:内核动态插桩方法
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
eBPF概述
eBPF的起源 · 发展历程 · 核心价值与典型应用场景
eBPF
的起源
02
kprobe技术基础
kprobe机制原理 · 工作流程 · 与jprobe/uprobe的区别
kprobe
技术基础
03
系统调用追踪概述
系统调用的概念 · Linux系统调用表 · 追踪系统调用的意义
系统调用追踪概述
系统调用的概念
04
开发环境搭建
内核源码准备 · LLVM/Clang工具链安装 · libbpf与bpftool配置
开发环境搭建
内核源码准备
05
eBPF程序生命周期
加载 · 验证 · JIT编译
eBPF
程序生命周期
06
kprobe事件结构
struct pt_regs解析 · 函数参数获取 · 返回值捕获方法
kprobe
事件结构
07
第一个kprobe程序
编写eBPF C程序 · 使用kprobe/sys_opena…
kprobe
第一个
08
BPF Map基础
BPF Map类型概述(哈希 · 数组 · 栈等)
BPF
Map
09
kprobe与Map结合
在kprobe中更新Map · 在用户态读取Map数据
kprobe
Map
10
追踪系统调用参数
从pt_regs中提取系统调用号 · 参数1-6的通用方法
追踪系统调用参数
pt
11
追踪系统调用返回值
使用kretprobe捕获函数返回值 · 与kprobe配对使用
追踪系统调用返回…
kretprobe
12
过滤与聚合
基于PID · UID · 系统调用号的条件过滤
过滤
聚合
13
性能开销分析
kprobe/kretprobe的性… · 采样率控制与优化策略
性能开销分析
kprobe/kretp…
14
安全与权限
CAP_BPF · CAP_SYS_ADMIN权限要求 · eBPF验证器的安全限制
安全
权限
15
bpftrace快速上手
使用bpftrace一行命令追踪系统… · 与C eBPF对比
bpftrace
快速上手
16
BCC框架入门
BCC Python/Lua前端编写… · 简化开发流程
BCC
框架入门
17
libbpf与CO-RE
编译一次到处运行(CO-RE)原理 · BTF与vmlinux.h的使用
libbpf
CO-RE
18
追踪文件系统调用
追踪open · read · write
追踪文件系统调用
open
19
追踪网络系统调用
追踪socket · connect · send
追踪网络系统调用
socket
20
追踪进程管理系统调用
追踪fork · execve · exit
追踪进程管理系统…
fork
21
追踪内存管理系统调用
追踪mmap · munmap · brk等内存分配与释放调用
追踪内存管理系统…
mmap
22
多kprobe协同
同时附加多个kprobe · 关联不同系统调用的数据
kprobe
协同
23
用户态数据交互
通过perf_event_array…
用户态数据交互
perf
24
环形缓冲区(Ring Buffer)
使用BPF_MAP_TYPE_RIN…
Ring
Buffer
25
错误处理与调试
常见eBPF验证错误 · kprobe注册失败原因及调试技巧
错误处理
调试
26
实战案例1
编写一个系统调用频率统计工具 · 输出Top N系统调用
实战案例1
编写一个系统调用…
27
实战案例2
编写一个文件访问监控工具 · 记录进程打开的文件路径
实战案例2
编写一个文件访问…
28
实战案例3
编写一个网络连接追踪工具 · 监控TCP连接建立与关闭
实战案例3
编写一个网络连接…
29
内核版本兼容性
不同内核版本下kprobe API的… · 适配策略
内核版本兼容性
kprobe
30
课程总结与展望
eBPF未来发展方向 · kprobe在可观测性中的角色
课程总结
eBPF
所属VIP或分类
同VIP:eBPF与kprobe-内核函数动态追踪与性能诊断实战
同VIP:Linux-eBPF内核可观测性工程
同VIP:Linux-Perf内核性能分析与调优工程