Linux内核观察技术BPF
文章平均质量分 96
坏一点
拥有11年各个主流平台驱动开发经验,专注于外设驱动适配、内核调试与优化,曾参与多个0到1的开发项目。擅长将复杂的驱动开发技术转化为清晰易懂的实操指南,坚信 “底层扎实,应用才能稳健”。
无论你是刚涉足驱动开发的新手,还是希望提升驱动开发能力的资深工程师,在这里都能找到实用的内容。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux BPF技术深度解析(3):jetson agx orin使用BPF(第二部分)
本文介绍了在Jetson AGX Orin上使用BPF工具bcc-tools的方法和案例。主要内容包括:1)bcc-tools工具的分类和功能模块,涵盖内存、进程、性能、CPU、网络等多个方面;2)详细列出了bcc-tools中100多个示例程序的目录结构和功能说明;3)重点分析了hello_world.py示例,展示了如何通过kprobe追踪内核函数并输出信息,验证了BPF环境的基本功能。这些示例为系统性能分析、网络监控、内存管理等提供了丰富的实践案例,是学习BPF技术的重要参考。原创 2025-08-26 21:09:54 · 772 阅读 · 0 评论 -
Linux BPF技术深度解析(3):jetson agx orin使用BPF(第一部分)
本文介绍了在Jetson AGX Orin上构建BPF开发环境的完整过程。首先分析了设备默认的BPF配置状态,重点修改了NET_CLS_BPF和NET_ACT_BPF两个关键配置项。随后详细说明了内核编译步骤,包括环境准备、源码获取、配置修改和编译安装。第二部分重点介绍了从源码编译安装BCC工具链的过程,包括依赖安装、源码编译、Python绑定以及常见问题的解决方法。最后通过Python导入测试验证了BCC安装成功,并指出示例程序所在路径。整个流程涵盖了从内核配置到用户空间工具链搭建的完整BPF开发环境构建原创 2025-08-26 19:55:10 · 961 阅读 · 0 评论 -
Linux BPF技术深度解析(1):BPF程序类型和案例
BPF程序可分为跟踪类和网络类两大类型。跟踪类程序(如kprobe、tracepoint)用于监控系统事件和性能分析,网络类程序(如XDP、tcBPF)则专注于高效网络包处理。文章详细介绍了15种BPF程序类型,包括套接字过滤器、XDP程序、cgroup控制等,并提供了每种类型的代码示例。这些程序通过动态加载到内核,实现高效的事件处理、网络流量控制和系统监控等功能,广泛应用于性能优化、安全审计和网络流量管理等领域。BPF技术因其高性能和灵活性,已成为现代Linux系统的重要工具。原创 2025-07-08 10:56:10 · 1069 阅读 · 0 评论 -
Linux BPF技术深度解析(1):Hello World实现
BPF(Berkeley Packet Filter)是Linux内核中的高效技术,最初用于网络数据包过滤,现已扩展到系统监控、安全等领域。它通过在内核态运行虚拟机实现高性能的数据处理,核心优势包括:避免内核态/用户态切换、通过验证器保证安全性、支持动态加载。文章详细介绍了BPF的工作原理(程序加载、数据包过滤、数据交互)、环境搭建方法(Ubuntu系统部署、内核源码获取)以及一个监控execve系统调用的示例程序。该示例展示了如何编写BPF程序(C语言编译为BPF字节码)、加载到内核跟踪点。原创 2025-07-03 12:11:43 · 1257 阅读 · 0 评论
分享