Capítulo 10. Programação eBPF
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Neste livro até agora, aprendeste muito sobre o eBPF e viste muitos exemplos de como ele é usado para uma variedade de aplicações. Mas e se quiseres implementar as tuas próprias ideias baseadas no eBPF? Este capítulo discute as tuas opções quando se trata de escrever o teu próprio código eBPF.
Como sabes ao ler este livro, a programação do eBPF é composta por duas partes:
Escrever programas eBPF que correm no kernel
Escrever o código do espaço do utilizador que gere e interage com os programas eBPF
A maior parte das bibliotecas e linguagens que vou discutir neste capítulo requerem que tu, como programador, trates de ambas as partes, com consciência do que está a ser tratado e onde. Mas bpftrace, talvez a linguagem de programação eBPF mais simples, esconde esta distinção do programador.
Bpftrace
Como descrito na página README do projeto, "bpftrace é uma linguagem de rastreio de alto nível para o Linux eBPF ... inspirada em awk e C, e em rastreadores predecessores como o DTrace e o SystemTap."
A ferramenta bpftrace converte programas escritos nesta linguagem de alto nível em código do kernel do eBPF e fornece alguma formatação de saída para os resultados dentro do terminal. Como utilizador, não precisas realmente de pensar na divisão do espaço kernel-utilizador.
Encontrarás vários exemplos de one-liners úteis na documentação do ...