eBPF 核心技术与实战
用 eBPF 洞悉内核运行状态
倪朋飞  资深 Linux 专家,Kubernetes 项目维护者
专栏
未完结·共 37 讲·已更新 26 讲·每年更新5讲
|
1.0w 人已学
|
收藏
从内核 5.2 开始,只要开启了 CONFIG_DEBUG_INFO_BTF,在编译内核时,内核数据结构的定义就会自动内嵌在内核二进制文件 vmlinux 中。并且,你还可以借助下面的命令,把这些数据结构的定义导出到一个头文件中(通常命名为 vmlinux.h):
来自:05 | 编程接口:eBPF程序是怎么跟内核进行交互的?
4 人划过
在内核插桩和跟踪点两者都可用的情况下,应该选择更稳定的跟踪点,以保证 eBPF 程序的可移植性(即在不同版本的内核中都可以正常执行)。
来自:07 | 内核跟踪(上):如何查询内核中的跟踪点?
3 人划过
eBPF 程序并不像常规的线程那样,启动后就一直运行在那里,它需要事件触发后才会执行。这些事件包括系统调用、内核跟踪点、内核函数和用户态函数的调用退出、网络事件,等等。借助于强大的内核态插桩(kprobe)和用户态插桩(uprobe),eBPF 程序几乎可以在内核和应用的任意位置进行插桩。
来自:01|技术概览:eBPF的发展历程及工作原理
3 人划过
卸载模式。它需要网卡固件支持 XDP 卸载,XDP 程序直接运行在网卡上,而不再需要消耗主机的 CPU 资源,具有最好的性能。
来自:06 | 事件触发:各类eBPF程序的触发机制及其应用场景
3 人划过
*精彩内容为该课程各文章中划线次数最多的内容
免费试读
讲师

倪朋飞

资深 Linux 专家,Kubernetes 项目维护者

倪朋飞,云计算老兵,资深 Linux 专家, Kubernetes 项目维护者,极客时间专栏《Linux 性能优化实战》作者。主要负责开源容器编排系统 Kubernetes 在 Azure 的落地实践。他曾任职于盛大云和腾讯,10 年来一直从事云计算领域,特别专注于 Ia...查看更多
编辑推荐
讲师的其他课程
Linux 性能优化实战
倪朋飞
资深 Linux 专家,Kubernetes 项目维护者

65讲 | 87286 人已学习

¥68¥199
包含这门课的学习路径

运维工程师

32门课程 149.1w人学习
看过的人还看了
深入剖析 Kubernetes
张磊
Kubernetes 社区资深成员与项目维护者

57讲 | 116750 人已学习

¥68¥199
左耳听风
陈皓
网名“左耳朵耗子”,资深技术专家

119讲 | 180991 人已学习

¥98¥399
MySQL 实战 45 讲
林晓斌
网名丁奇,前腾讯云数据库负责人

49讲 | 224925 人已学习

¥68¥199
数据结构与算法之美
王争
前 Google 工程师

81讲 | 283789 人已学习

¥68¥199
Linux 性能优化实战
倪朋飞
资深 Linux 专家,Kubernetes 项目维护者

65讲 | 87286 人已学习

¥68¥199
趣谈网络协议
刘超
前网易研究院云计算技术部首席架构师

51讲 | 130442 人已学习

¥68¥199