摘要:
首先,需要安装好 go 插件,插件市场搜索go,选一个即可安装。 然后,需要安装 go 的工具包。在 vscode 中,输入快捷键:command(ctrl) + shift + p,在弹出的窗口中,输入:go:install/Update Tools,回车后,选择所有插件(勾一下全选),点击确认, 阅读全文
摘要:
Perf Buffer常规用法: struct addrinfo //需要上传给应用层的数据结构 { int ai_flags; /* Input flags. */ int ai_family; /* Protocol family for socket. */ int ai_socktype; 阅读全文
摘要:
前段时间编译bpf c文件,都是用的bpf2go这个go包,这个包虽然很方便,但是指定参数比较困难, 学习到tracee falco这种大型项目都是通过makefile直接编译bpf代码,因此打算自己写Makefile clang -D__KERNEL__ -D__ASM_SYSREG_H \ -D 阅读全文
摘要:
0x1:基本概念 当使用tracepoint的时候,函数参数如何确认? cat /sys/kernel/debug/tracing/events/syscalls/xxx/format. xxx为要跟踪的函数,在这里有函数参数定义。 2. 0x2:注意事项 写结构体的时候一定要注意内存对齐,防止被编 阅读全文
摘要:
0x1:应用层流程 基于Linux kernel source v5.13 1.加载bpf.o文件并处理elf section信息 1.int bpf_object__open(char *path) //参数是bpf.o文件路径 -- __bpf_object__open(const char * 阅读全文