Air a ghabhail a-steach ann an sreath cruinneachaidh GCC
A bharrachd air backend airson gineadh bytecode, tha GCC a’ toirt a-steach port libgcc airson eBPF agus innealan airson faidhlichean ELF a ghineadh a tha ga dhèanamh comasach còd a chuir an gnìomh anns an inneal brìgheil eBPF a’ cleachdadh luchdan le kernel. Chaidh pìosan gus taic a thoirt do eBPF ann an GCC ullachadh le innleadairean bho Oracle, a bha mar-thà
Faodar prògraman airson eBPF a mhìneachadh ann am fo-sheata den chànan C, a chur ri chèile agus a luchdachadh a-steach don kernel. Mus tèid a chuir gu bàs, bidh an t-eadar-theangair eBPF a’ sgrùdadh a’ chòd byte airson a bhith a’ cleachdadh stiùiridhean ceadaichte agus a’ cur riaghailtean sònraichte air a’ chòd (mar eisimpleir, gun lùban).
An toiseach, chaidh innealan stèidhichte air LLVM a chleachdadh gus eBPF a chuir ri chèile air Linux. Tha taic eBPF ann an GCC inntinneach oir leigidh e leat aon inneal a chleachdadh gus na prògraman Linux kernel agus eBPF a thogail, gun a bhith a’ stàladh eisimeileachd a bharrachd.
Ann an cruth phrògraman eBPF, faodaidh tu luchd-làimhseachaidh gnìomhachd lìonra a chruthachadh, trafaic a shìoladh, leud-bann a riaghladh, sùil a chumail air siostaman, smachd a chumail air fiosan siostam, smachd a chumail air ruigsinneachd, cunntadh tricead agus ùine gnìomhachd, agus lorg a dhèanamh a’ cleachdadh kprobes / uprobes / tracepoints.
Source: fosgailtenet.ru