3 Repos
The authoring and development of programs designed for the eBPF runtime.
Distinct from Kernel Observability Programs: Focuses on the development experience and environment rather than just the observability outcome.
Explore 3 awesome GitHub repositories matching operating systems & systems programming · eBPF Program Development. Refine with filters or upvote what's useful.
Aya is a Rust-native framework for writing, compiling, and loading eBPF programs into the Linux kernel. It provides a complete development environment that eliminates the need for a C toolchain or libbpf, allowing developers to work entirely within the Rust ecosystem. The framework manages the full lifecycle of eBPF programs, including async runtime integration, CO-RE BTF resolution for kernel version portability, ELF-based program loading, and safe kernel memory access. The framework distinguishes itself through its pure Rust compilation pipeline, which compiles Rust source code directly int
Provides a Rust-native API for writing XDP programs that process incoming network packets.
Dieses Projekt ist eine Bildungsressource, die ein umfassendes Entwicklungs-Tutorial zum Schreiben und Laden von eBPF-Programmen unter Verwendung von C, Go und Rust innerhalb des Linux-Kernels bietet. Es dient als technischer Leitfaden für die Entwicklung benutzerdefinierter Logik zur direkten Ausführung im Kernel. Die Materialien decken spezialisierte Bereiche ab, einschließlich Kernel-Observability und Tracing, Sicherheitsimplementierung für Intrusion-Detection und High-Performance-Network-Engineering für Paketfilterung und Load Balancing. Es enthält zudem dedizierte Handbücher für Linux-Kernel-Tracing und die Verwendung von kprobes, uprobes und tracepoints. Das Projekt umfasst ein breites Spektrum an Funktionsbereichen, wie Kernel-Instrumentierung, Systemüberwachung und Observability, Netzwerkanalyse und Sicherheitsdurchsetzung. Es erstreckt sich zudem auf Hardware-Level-Debugging für GPUs und Treiber sowie auf Low-Level-Systemmanipulation und Ressourcenmanagement.
Provides a comprehensive tutorial on writing and loading eBPF programs using C, Go, and Rust.
Inspektor Gadget is an eBPF observability toolset and program framework designed for tracing Linux systems and debugging Kubernetes nodes. It provides a suite of tools to collect kernel-level telemetry and export system metrics via the OpenTelemetry standard. The project distinguishes itself by packaging inspection tools as OCI-compliant container images, allowing for standardized distribution and deployment across clusters and hosts. It employs a modular data processing pipeline that utilizes WebAssembly modules to transform and filter telemetry, and leverages Compile Once Run Everywhere for
Provides a framework for creating and packaging system inspection tools as eBPF programs.