최근 수정 시각 : 2026-09-20 19:15:18

eBPF



1. 개요2. 관련 문서

1. 개요

eBPF는 Linux 커널 안에서 사용자 코드를 실행하기 위한 아키텍처와, 그 코드를 실행 전에 커널이 검사하는 장치를 아울러 부르는 이름이다.

원래는 extended Berkeley Packet Filter의 약어였으나, 패킷 필터와 무관한 용도까지 널리 포괄하게 되면서 현재는 eBPF 자체가 하나의 고유 명사가 되었다. # 리눅스 커널 문서에서는 eBPF를 그냥 BPF라 부르며, 초창기 BPF를 eBPF와 구분하기 위해 cBPF(classic BPF)로 부르기도 한다.

커널 소스를 고치거나 커널 모듈을 올리지 않고도 패킷 수신, 시스템 콜, 커널 함수 진입 같은 커널 이벤트에 코드를 붙일 수 있는 것이 특징이다. 코드는 커널 안에서 네이티브 코드로 돌지만, 로드 시점에 검증기가 종료와 메모리 안전을 증명한 프로그램만 실행되므로 커널을 멈추게 하거나 임의 메모리를 건드릴 수 없다.

2. 관련 문서