eBPF
Extend the Linux kernel to collect observability, security, and networking data without changing kernel source code or loading additional modules.
eBPF is a technology that allows the Linux kernel to be extended and perform additional tasks without needing to change the kernel source code or load more modules.
eBPF works for both user and OS applications and can apply cross-cutting tasks such as observability, security, and networking functionality.
It is highly efficient because the operating system executes its extended capabilities by using a Just-In-Time (JIT) compiler.
eBPF programs are executed when configured kernel or application hook points are triggered.
Pre-defined hooks include system calls, function entry and exit, kernel tracepoints, network events, and several others.
If a pre-defined hook does not exist, additional kernel probes (Kprobes) or user probes (Uprobes) can be created to attach eBPF programs almost anywhere in kernel or user applications.