Kaasup dina GCC compiler suite
Salian backend pikeun generasi bytecode, GCC ngawengku port libgcc pikeun eBPF sarta parabot pikeun generating file ELF nu ngamungkinkeun pikeun ngaéksekusi kode dina mesin virtual eBPF ngagunakeun loaders-disadiakeun kernel. Patch pikeun ngadukung eBPF di GCC disiapkeun ku insinyur ti Oracle, anu parantos
Program pikeun eBPF tiasa dihartikeun dina sawaréh tina basa C, disusun sareng dimuat kana kernel. Sateuacan palaksanaan, juru eBPF pariksa bytecode pikeun pamakéan parentah diidinan sarta maksakeun aturan nu tangtu dina kode (contona, euweuh loop).
Mimitina, alat basis LLVM dianggo pikeun nyusun eBPF dina Linux. Pangrojong eBPF di GCC pikaresepeun sabab ngamungkinkeun anjeun ngagunakeun hiji toolkit pikeun ngawangun kernel Linux sareng program eBPF, tanpa masang dependensi tambahan.
Dina bentuk program eBPF, anjeun tiasa ngadamel pawang operasi jaringan, lalu lintas nyaring, ngatur rubakpita, sistem monitor, telepon sistem intercept, aksés kontrol, ngitung frékuénsi sareng waktos operasi, sareng ngalaksanakeun tracing nganggo kprobes / uprobes / tracepoints.
sumber: opennet.ru