Skip to content

Commit 049b40d

Browse files
committed
rename README to chinese documents
1 parent 25ab494 commit 049b40d

File tree

143 files changed

+14564
-14551
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

143 files changed

+14564
-14551
lines changed

README.md

+41-45
Original file line numberDiff line numberDiff line change
@@ -13,80 +13,76 @@ This tutorial **does not cover complex concepts and scenario introductions**. It
1313

1414
The tutorial focuses on eBPF examples in observability, networking, security, and more.
1515

16-
#### [**中文版在这里**](README.zh.md)
16+
[**中文版在这里**](README.zh.md)
1717

1818
## Table of Contents
1919

2020
### Getting Started Examples
2121

2222
This section contains simple eBPF program examples and introductions. It primarily utilizes the `eunomia-bpf` framework to simplify development and introduces the basic usage and development process of eBPF.
2323

24-
- [lesson 0-introduce](src/0-introduce/README_en.md) Introduction to Core Concepts and Tools
25-
- [lesson 1-helloworld](src/1-helloworld/README_en.md) Hello World, Framework and Development
26-
- [lesson 2-kprobe-unlink](src/2-kprobe-unlink/README_en.md) Monitoring unlink System Calls with kprobe
27-
- [lesson 3-fentry-unlink](src/3-fentry-unlink/README_en.md) Monitoring unlink System Calls with fentry
28-
- [lesson 4-opensnoop](src/4-opensnoop/README_en.md) Capturing Opening Files and Filter with Global Variables
29-
- [lesson 5-uprobe-bashreadline](src/5-uprobe-bashreadline/README_en.md) Capturing readline Function Calls with Uprobe
30-
- [lesson 6-sigsnoop](src/6-sigsnoop/README_en.md) Capturing Signal Sending and Store State with Hash Maps
31-
- [lesson 7-execsnoop](src/7-execsnoop/README_en.md) Capturing Process Execution, Output with perf event array
32-
- [lesson 8-exitsnoop](src/8-exitsnoop/README_en.md) Monitoring Process Exit Events, Output with Ring Buffer
33-
- [lesson 9-runqlat](src/9-runqlat/README_en.md) Capturing Scheduling Latency and Recording as Histogram
34-
- [lesson 10-hardirqs](src/10-hardirqs/README_en.md) Capturing Interrupts with hardirqs or softirqs
24+
- [lesson 0-introduce](src/0-introduce/README.md) Introduction to Core Concepts and Tools
25+
- [lesson 1-helloworld](src/1-helloworld/README.md) Hello World, Framework and Development
26+
- [lesson 2-kprobe-unlink](src/2-kprobe-unlink/README.md) Monitoring unlink System Calls with kprobe
27+
- [lesson 3-fentry-unlink](src/3-fentry-unlink/README.md) Monitoring unlink System Calls with fentry
28+
- [lesson 4-opensnoop](src/4-opensnoop/README.md) Capturing Opening Files and Filter with Global Variables
29+
- [lesson 5-uprobe-bashreadline](src/5-uprobe-bashreadline/README.md) Capturing readline Function Calls with Uprobe
30+
- [lesson 6-sigsnoop](src/6-sigsnoop/README.md) Capturing Signal Sending and Store State with Hash Maps
31+
- [lesson 7-execsnoop](src/7-execsnoop/README.md) Capturing Process Execution, Output with perf event array
32+
- [lesson 8-exitsnoop](src/8-exitsnoop/README.md) Monitoring Process Exit Events, Output with Ring Buffer
33+
- [lesson 9-runqlat](src/9-runqlat/README.md) Capturing Scheduling Latency and Recording as Histogram
34+
- [lesson 10-hardirqs](src/10-hardirqs/README.md) Capturing Interrupts with hardirqs or softirqs
35+
3536
### Advanced Documents and Examples
3637

3738
We start to build complete eBPF projects mainly based on `libbpf` and combine them with various application scenarios for practical use.
3839

39-
- [lesson 11-bootstrap](src/11-bootstrap/README_en.md) Develop User-Space Programs with libbpf and Trace exec() and exit()
40-
- [lesson 12-profile](src/12-profile/README_en.md) Using eBPF Program Profile for Performance Analysis
41-
- [lesson 13-tcpconnlat](src/13-tcpconnlat/README_en.md) Statistics of TCP Connection Delay with libbpf
42-
- [lesson 14-tcpstates](src/14-tcpstates/README_en.md) Recording TCP Connection Status and TCP RTT
43-
- [lesson 15-javagc](src/15-javagc/README_en.md) Capturing User-Space Java GC Duration Using USDT
44-
- [lesson 16-memleak](src/16-memleak/README_en.md) Monitoring Memory Leaks
45-
- [lesson 17-biopattern](src/17-biopattern/README_en.md) Count Random/Sequential Disk I/O
46-
- [lesson 18-further-reading](src/18-further-reading/README_en.md) More Reference Materials: papers, projects
47-
- [lesson 19-lsm-connect](src/19-lsm-connect/README_en.md) Security Detection and Defense using LSM
48-
- [lesson 20-tc](src/20-tc/README_en.md) tc Traffic Control
49-
- [lesson 21-xdp](src/21-xdp/README_en.md) Programmable Packet Processing with XDP
40+
- [lesson 11-bootstrap](src/11-bootstrap/README.md) Develop User-Space Programs with libbpf and Trace exec() and exit()
41+
- [lesson 12-profile](src/12-profile/README.md) Using eBPF Program Profile for Performance Analysis
42+
- [lesson 13-tcpconnlat](src/13-tcpconnlat/README.md) Statistics of TCP Connection Delay with libbpf
43+
- [lesson 14-tcpstates](src/14-tcpstates/README.md) Recording TCP Connection Status and TCP RTT
44+
- [lesson 15-javagc](src/15-javagc/README.md) Capturing User-Space Java GC Duration Using USDT
45+
- [lesson 16-memleak](src/16-memleak/README.md) Monitoring Memory Leaks
46+
- [lesson 17-biopattern](src/17-biopattern/README.md) Count Random/Sequential Disk I/O
47+
- [lesson 18-further-reading](src/18-further-reading/README.md) More Reference Materials: papers, projects
48+
- [lesson 19-lsm-connect](src/19-lsm-connect/README.md) Security Detection and Defense using LSM
49+
- [lesson 20-tc](src/20-tc/README.md) tc Traffic Control
50+
- [lesson 21-xdp](src/21-xdp/README.md) Programmable Packet Processing with XDP
51+
5052
### In-Depth Topics
5153

5254
This section covers advanced topics related to eBPF, including using eBPF programs on Android, possible attacks and defenses using eBPF programs, and complex tracing. Combining the user-mode and kernel-mode aspects of eBPF can bring great power (as well as security risks).
5355

54-
55-
5656
Android:
5757

58-
- [lesson 22-android](src/22-android/README_en.md) Using eBPF Programs on Android
59-
58+
- [lesson 22-android](src/22-android/README.md) Using eBPF Programs on Android
6059

6160
Networking:
6261

63-
- [lesson 23-http](src/23-http/README_en.md) L7 Tracing with eBPF: HTTP and Beyond via Socket Filters and Syscall Tracepoints
64-
- [lesson 29-sockops](src/29-sockops/README_en.md) Accelerating Network Request Forwarding with Sockops
65-
- [lesson 41-xdp-tcpdump](src/41-xdp-tcpdump/README_en.md) Capturing TCP Information with XDP
66-
- [lesson 42-xdp-loadbalancer](src/42-xdp-loadbalancer/README_en.md) XDP Load Balancer
67-
62+
- [lesson 23-http](src/23-http/README.md) L7 Tracing with eBPF: HTTP and Beyond via Socket Filters and Syscall Tracepoints
63+
- [lesson 29-sockops](src/29-sockops/README.md) Accelerating Network Request Forwarding with Sockops
64+
- [lesson 41-xdp-tcpdump](src/41-xdp-tcpdump/README.md) Capturing TCP Information with XDP
65+
- [lesson 42-xdp-loadbalancer](src/42-xdp-loadbalancer/README.md) XDP Load Balancer
6866

6967
Security:
7068

71-
- [lesson 24-hide](src/24-hide/README_en.md) Hiding Process or File Information
72-
- [lesson 25-signal](src/25-signal/README_en.md) Using bpf_send_signal to Terminate Malicious Processes in eBPF
73-
- [lesson 26-sudo](src/26-sudo/README_en.md) Using eBPF to add sudo user
74-
- [lesson 27-replace](src/27-replace/README_en.md) Replace Text Read or Written by Any Program with eBPF
75-
- [lesson 28-detach](src/28-detach/README_en.md) Running eBPF After Application Exits: The Lifecycle of eBPF Programs
76-
- [lesson 34-syscall](src/34-syscall/README_en.md) Modifying System Call Arguments with eBPF
77-
69+
- [lesson 24-hide](src/24-hide/README.md) Hiding Process or File Information
70+
- [lesson 25-signal](src/25-signal/README.md) Using bpf_send_signal to Terminate Malicious Processes in eBPF
71+
- [lesson 26-sudo](src/26-sudo/README.md) Using eBPF to add sudo user
72+
- [lesson 27-replace](src/27-replace/README.md) Replace Text Read or Written by Any Program with eBPF
73+
- [lesson 28-detach](src/28-detach/README.md) Running eBPF After Application Exits: The Lifecycle of eBPF Programs
74+
- [lesson 34-syscall](src/34-syscall/README.md) Modifying System Call Arguments with eBPF
7875

7976
Scheduler:
8077

81-
- [lesson 44-scx-simple](src/44-scx-simple/README_en.md) Introduction to the BPF Scheduler
82-
78+
- [lesson 44-scx-simple](src/44-scx-simple/README.md) Introduction to the BPF Scheduler
8379

8480
Other:
8581

86-
- [lesson 35-user-ringbuf](src/35-user-ringbuf/README_en.md) Asynchronously Send to Kernel with User Ring Buffer
87-
- [lesson 36-userspace-ebpf](src/36-userspace-ebpf/README_en.md) Userspace eBPF Runtimes: Overview and Applications
88-
- [lesson 38-btf-uprobe](src/38-btf-uprobe/README_en.md) Expanding eBPF Compile Once, Run Everywhere(CO-RE) to Userspace Compatibility
89-
- [lesson 43-kfuncs](src/43-kfuncs/README_en.md) Extending eBPF Beyond Its Limits: Custom kfuncs in Kernel Modules
82+
- [lesson 35-user-ringbuf](src/35-user-ringbuf/README.md) Asynchronously Send to Kernel with User Ring Buffer
83+
- [lesson 36-userspace-ebpf](src/36-userspace-ebpf/README.md) Userspace eBPF Runtimes: Overview and Applications
84+
- [lesson 38-btf-uprobe](src/38-btf-uprobe/README.md) Expanding eBPF Compile Once, Run Everywhere(CO-RE) to Userspace Compatibility
85+
- [lesson 43-kfuncs](src/43-kfuncs/README.md) Extending eBPF Beyond Its Limits: Custom kfuncs in Kernel Modules
9086

9187
Continuously updating...
9288

0 commit comments

Comments
 (0)