Inkluż fis-suite tal-kompilaturi tal-GCC
Minbarra backend għall-ġenerazzjoni tal-bytecode, GCC jinkludi port libgcc għal eBPF u għodod għall-ġenerazzjoni ta 'fajls ELF li jagħmluha possibbli li tesegwixxi kodiċi fil-magna virtwali eBPF bl-użu ta' loaders ipprovduti mill-kernel. Irqajja biex jappoġġjaw eBPF fil-GCC tħejjew minn inġiniera minn Oracle, li diġà kellhom
Programmi għall-eBPF jistgħu jiġu definiti f'subsett tal-lingwa C, ikkompilati u mgħobbija fil-kernel. Qabel l-eżekuzzjoni, l-interpretu eBPF jiċċekkja l-bytecode għall-użu ta 'struzzjonijiet permessi u jimponi ċerti regoli fuq il-kodiċi (per eżempju, l-ebda loops).
Inizjalment, intużaw għodod ibbażati fuq LLVM biex jiġbru eBPF fuq Linux. L-appoġġ tal-eBPF fil-GCC huwa interessanti għaliex jippermettilek tuża toolkit wieħed biex tibni l-kernel Linux u l-programmi eBPF, mingħajr ma tinstalla dipendenzi addizzjonali.
Fil-forma ta 'programmi eBPF, tista' toħloq handlers tal-operat tan-netwerk, tiffiltra t-traffiku, timmaniġġja bandwidth, tissorvelja sistemi, interċetta sejħiet tas-sistema, tikkontrolla l-aċċess, tgħodd il-frekwenza u l-ħin tal-operazzjonijiet, u twettaq traċċar bl-użu ta 'kprobes/uprobes/tracepoints.
Sors: opennet.ru