From 0ff4ea2f98e65307783f8ae838c22fbd9470b6a2 Mon Sep 17 00:00:00 2001 From: yunwei37 <1067852565@qq.com> Date: Tue, 30 May 2023 18:48:53 +0800 Subject: [PATCH] rename tcprtt to javagc --- README.md | 7 +++++-- src/{15-tcprtt => 14-tcpstates}/bits.bpf.h | 0 src/{15-tcprtt => 14-tcpstates}/maps.bpf.h | 0 src/{15-tcprtt => 14-tcpstates}/tcprtt.bpf.c | 0 src/{15-tcprtt => 14-tcpstates}/tcprtt.h | 0 src/{15-tcprtt/README.md => 14-tcpstates/tcprtt.md} | 4 +--- src/15-javagc/README.md | 3 +++ src/28-detach/README.md | 1 + 8 files changed, 10 insertions(+), 5 deletions(-) rename src/{15-tcprtt => 14-tcpstates}/bits.bpf.h (100%) rename src/{15-tcprtt => 14-tcpstates}/maps.bpf.h (100%) rename src/{15-tcprtt => 14-tcpstates}/tcprtt.bpf.c (100%) rename src/{15-tcprtt => 14-tcpstates}/tcprtt.h (100%) rename src/{15-tcprtt/README.md => 14-tcpstates/tcprtt.md} (97%) create mode 100644 src/15-javagc/README.md create mode 100644 src/28-detach/README.md diff --git a/README.md b/README.md index 7dbdfdf..5beea1f 100644 --- a/README.md +++ b/README.md @@ -31,8 +31,8 @@ - [lesson 11-bootstrap](src/11-bootstrap/README.md) 使用 libbpf-boostrap 为 eBPF 编写原生的 libbpf 用户态代码,并建立完整的 libbpf 工程。 - [lesson 12-profile](src/12-profile/README.md) 使用 eBPF 进行性能分析 - [lesson 13-tcpconnlat](src/13-tcpconnlat/README.md) 记录 TCP 连接延迟,并使用 libbpf 在用户态处理数据 -- [lesson 14-tcpstates](src/14-tcpstates/README.md) 记录 TCP 连接状态 -- [lesson 15-tcprtt](src/15-tcprtt/README.md) 以直方图方式记录 TCP RTT,并使用 libbpf 在用户态采样 map 信息 +- [lesson 14-tcpstates](src/14-tcpstates/README.md) 记录 TCP 连接状态与 TCP RTT +- [lesson 15-javagc](src/15-javagc/README.md) 使用 usdt 捕获用户态 Java GC 事件耗时 - [lesson 16-memleak](src/16-memleak/README.md) 检测内存泄漏 - [lesson 17-biopattern](src/17-biopattern/README.md) 捕获磁盘 IO 模式 - [lesson 18-further-reading](src/18-further-reading/README.md) 更进一步的相关资料? @@ -50,6 +50,9 @@ - [使用 bpf_send_signal 发送信号终止进程](src/25-signal/README.md) - [使用 eBPF 添加 sudo 用户](src/26-sudo/README.md) - [使用 eBPF 替换任意程序读取或写入的文本](src/27-replace/README.md) +- [使用 Detached 模式在用户态应用退出后持续运行 eBPF 程序](src/28-detach/README.md) + +持续更新中... ## 为什么要写这个教程? diff --git a/src/15-tcprtt/bits.bpf.h b/src/14-tcpstates/bits.bpf.h similarity index 100% rename from src/15-tcprtt/bits.bpf.h rename to src/14-tcpstates/bits.bpf.h diff --git a/src/15-tcprtt/maps.bpf.h b/src/14-tcpstates/maps.bpf.h similarity index 100% rename from src/15-tcprtt/maps.bpf.h rename to src/14-tcpstates/maps.bpf.h diff --git a/src/15-tcprtt/tcprtt.bpf.c b/src/14-tcpstates/tcprtt.bpf.c similarity index 100% rename from src/15-tcprtt/tcprtt.bpf.c rename to src/14-tcpstates/tcprtt.bpf.c diff --git a/src/15-tcprtt/tcprtt.h b/src/14-tcpstates/tcprtt.h similarity index 100% rename from src/15-tcprtt/tcprtt.h rename to src/14-tcpstates/tcprtt.h diff --git a/src/15-tcprtt/README.md b/src/14-tcpstates/tcprtt.md similarity index 97% rename from src/15-tcprtt/README.md rename to src/14-tcpstates/tcprtt.md index e87310b..9e529f4 100644 --- a/src/15-tcprtt/README.md +++ b/src/14-tcpstates/tcprtt.md @@ -2,9 +2,7 @@ ## 背景 -网络质量在互联网社会中是一个很重要的因素。导致网络质量差的因素有很多,可能是硬件因素导致,也可能是程序 -写的不好导致。为了能更好地定位网络问题,`tcprtt` 工具被提出。它可以监测TCP链接的往返时间,从而分析 -网络质量,帮助用户定位问题来源。 +网络质量在互联网社会中是一个很重要的因素。导致网络质量差的因素有很多,可能是硬件因素导致,也可能是程序写的不好导致。为了能更好地定位网络问题,`tcprtt` 工具被提出。它可以监测TCP链接的往返时间,从而分析网络质量,帮助用户定位问题来源。 当有tcp链接建立时,该工具会自动根据当前系统的支持情况,选择合适的执行函数。 在执行函数中,`tcprtt`会收集tcp链接的各项基本信息,包括地址,源端口,目标端口,耗时 diff --git a/src/15-javagc/README.md b/src/15-javagc/README.md new file mode 100644 index 0000000..436cfeb --- /dev/null +++ b/src/15-javagc/README.md @@ -0,0 +1,3 @@ +# eBPF 入门实践教程:使用 usdt 捕获用户态 Java GC 事件耗时 + + diff --git a/src/28-detach/README.md b/src/28-detach/README.md new file mode 100644 index 0000000..c9a364f --- /dev/null +++ b/src/28-detach/README.md @@ -0,0 +1 @@ +# detach \ No newline at end of file