E kenyelelitsoe ho sehlopha sa pokello ea GCC
Ntle le mokokotlo oa tlhahiso ea bytecode, GCC e kenyelletsa boema-kepe ba libgcc bakeng sa eBPF le lisebelisoa tsa ho hlahisa lifaele tsa ELF tse etsang hore ho khonehe ho etsa khoutu mochining oa eBPF o sebelisang li-loaders tse fanoeng ke kernel. Lipache tse tšehetsang eBPF ho GCC li ile tsa lokisoa ke baenjiniere ba Oracle, ba neng ba se ba ntse ba le teng
Mananeo a eBPF a ka hlalosoa ka karoloana ea puo ea C, a bokelloa le ho kenngoa ka har'a kernel. Pele a bolaoa, mofetoleli oa eBPF o hlahloba bytecode bakeng sa tšebeliso ea litaelo tse lumelletsoeng mme o beha melao e itseng ho khoutu (mohlala, ha ho loops).
Qalong, lisebelisoa tse thehiloeng ho LLVM li ne li sebelisetsoa ho bokella eBPF ho Linux. Ts'ehetso ea eBPF ho GCC ea thahasellisa hobane e u lumella ho sebelisa sesebelisoa se le seng ho aha Linux kernel le mananeo a eBPF, ntle le ho kenya litšepe tse ling.
Ka mokhoa oa mananeo a eBPF, o ka etsa lisebelisoa tsa ts'ebetso ea marang-rang, sephethephethe sa filthara, ho laola marang-rang, ho shebella lisebelisoa, ho thibela mehala ea tsamaiso, ho laola phihlello, ho bala khafetsa le nako ea ts'ebetso, 'me u etse tracing u sebelisa kprobes/uprobes/tracepoints.
Source: opennet.ru