- 博客(10)
- 收藏
- 关注
原创 【eBPF】在eBPF程序中读取字符串
记一次`bpf_probe_read_user_str` 和`bpf_probe_read_str`的区别。`bpf_probe_read_user_str` 用于从用户空间地址读取字符串,会自动处理用户空间和内核空间的地址隔离问题;而 `bpf_probe_read_str` 用于从内核空间地址读取字符串,适合处理内核数据结构中的字段或 eBPF map 中的内存。简单来说,`_user_str` 是专为用户空间数据设计的,而 `_str` 适用于内核空间数据。
2025-01-22 15:43:47
361
原创 【eBPF】使用ringbuf过程中的常见错误
这是一个简单的 eBPF 程序,用于跟踪静态检查点 openat 函数。该程序通过利用 eBPF 的 tracepoint 功能,捕获内核中的 sys_enter_openat 事件,这是每次执行 openat 系统调用时触发的事件。通过这个程序,我们可以实时监控文件打开的操作,并且记录与每个 openat 调用相关的进程信息及其打开的文件路径。
2025-01-22 15:42:01
228
原创 【ebpf】使用Go运行socket filter程序
在学习使用Cilium ebpf的过程中遇到了个问题:socket ebpf程序如何加载到Socket上?这里对ebpf内核程序代码不做具体讲解,简单来说是通过socket解析以太网帧,再通过以太网帧获取IP数据报,接着再获取TCP,通过TCP获取HTTP请求头。
2024-12-20 15:16:43
605
原创 常见的 eBPF 程序类型和 ctx 类型对应表
在开发ebpf程序的时候如何确定ctx上下文的类型呢?:在kprobe和kretprobe程序中,ctx是类型,表示寄存器上下文。可以通过ctx访问被监控函数的参数或返回值。:根据具体的 tracepoint 事件,ctx类型会是与事件定义相对应的struct。:每个 tracepoint 都有一个特定的上下文结构,通常可以在中找到。例如,的ctx类型是。示例:在 XDP 程序中,ctx是类型,用于访问网络数据包的元数据和数据指针。:在 socket filter 程序中,ctx是。
2024-10-28 17:13:48
1001
原创 介绍一个快速切换KubeConfig的工具
频繁地在多个 Kubernetes 环境之间切换,包括本地 Docker 上的 Kubernetes、使用 Kind 创建的测试 Kubernetes 环境,以及各种测试集群上的 Kubernetes 实例。总之在我的日常学习和工作中各种各样的Kubernetes需要我去进行切换。于是乎 KubeComing 应运而生!
2024-08-04 21:38:34
1137
原创 使用WordPress从零搭建个人博客(二)
上一节针对于环境的搭建已经完成,并且已经成功通过IP地址访问Wordpress。这一节我们介绍配置SSL证书,并使用域名访问网站。
2024-07-17 17:03:39
366
原创 使用WordPress从零搭建个人博客(一)
搭建个人博客需要投入一些资金,如果预算不是很充足的话,第一年的成本我们可以压缩到50块钱左右(甚至更低,只需要支付一个域名费用),但是后续每年可能会需要200到500不等的投入。
2024-06-17 14:54:44
955
原创 介绍一个SpringBoot项目中用于校验参数空值与否的工具
一个用于在SpringBoot项目中判断参数对象中属性空值与否的工具,摆脱手动if判断,简化你的代码!
2023-03-02 13:24:18
684
1
原创 Idea如何自动编译TypeScript文件
Idea如何自动编译TypeScript文件1. 在webapp文件夹新建js和ts文件夹2.将ts文件夹在终端中打开(Win则在cmd)3.在ts目录下生成tsconfig.json文件4.修改配置文件5.监视tsconfig文件6.完成1. 在webapp文件夹新建js和ts文件夹2.将ts文件夹在终端中打开(Win则在cmd)3.在ts目录下生成tsconfig.json文件输入下面代码可以生成tsconfig,jsontsc --init4.修改配置文件打开tsconfig.j
2021-07-13 10:34:03
3435
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人