ebpf
文章平均质量分 58
ebpf机制以及编程方法和案例分析
程序猿Ricky的日常干货
擅长扫地、打杂、开车。。
展开
-
Linux跟踪系统调用耗时的方法(高级篇)
可以使用很多种办法来trace内核系统调用耗时,比如:使用perf probe功能使用ftrace功能使用bpftrace使用bcc使用systemtapbpftrace使用bpftrace可以比较简单的实现该功能,直接使用单行命令即可:bpftrace -e 'tracepoint:syscalls:sys_enter_write { @entry[tid]= nsecs;} tracepoint:syscalls:sys_exit_write /@entry[tid]/ {$inte原创 2021-03-17 17:01:22 · 2024 阅读 · 3 评论 -
使用bpftrace进行内核跟踪
bpftrace工具用法单行命令工具:bpftrace -e 'program'bpftrace直接跟-e选项后面加单行命令,一些示例,比如:bpftrace -e 'BEGIN { printf("Hello world!\n"); }'bpftrace -e 'kprobe:vfs_read { @[tid] = count();}'bpftrace -e 'kprobe:vfs_read /pid == 123/ { @[tid, comm] = count();}'bpftrace原创 2021-03-10 15:48:40 · 6193 阅读 · 1 评论 -
第一个eBPF程序.md
背景了解bpf的童鞋都应该知道,bpf程序是可以attach到不同的probe点上来做内核级别的trace,那么对于刚入门的人来说,如何来编写一个初级的bpf程序呢?这就是本篇博文想要介绍的内容。bpf程序的组成BPF程序我们知道它需要先使用LLVM进行编译,完成后加载到内核中去执行,那么对于一个完成的BPF程序来说,它应该包含有两部分:第一部分是用户态程序,它的作用是用来加载编译完成的内核BPF字节码文件,并且与内核态程序进行交互,一般是获取profiling数据。第二部分是内核态BPF程序,原创 2021-03-09 16:51:22 · 1046 阅读 · 0 评论 -
centos8系统中bcc安装
命令安装yum -y install bccyum -y install bcc-toolsyum -y install python3-bccyum -y install bcc-devel此时会安装bcc基础库和对应bcc tools,然而我们想要直接运行对应的bcc-tools,比如execsnoop却发现并未找到对应的可执行文件。查看下bcc-tools工具的安装目录:rpm -ql bcc-tools发现该工具的安装目录在/usr/share/bcc/tools/ 这里。这个目录原创 2021-03-09 11:22:51 · 2207 阅读 · 3 评论