GCC hadda waxaa ku jira dhabarka dambe ee la isku duba ridi karo eBPF

Lagu daray GCC compiler suite korsaday code loogu talagalay ururinta barnaamijyada turjubaanka bytecode ee lagu dhex dhisay kernel Linux eGMP. Waad ku mahadsan tahay adeegsiga isku-dubbaridka JIT, bytecode kernel-ka waxaa loo tarjumaa duullimaad ahaan tilmaamaha mashiinka waxaana lagu fuliyaa waxqabadka koodka asalka ah. Xirmooyinka leh taageerada eBPF aqbalay ilaa laanta uu ka soo baxay GCC 10 siidaynta.

Marka laga soo tago dhabarka dambe ee jiilka bytecode, GCC waxaa ku jira deked libgcc ee eBPF iyo aaladaha lagu soo saaro faylalka ELF taas oo suurtogal ka dhigaysa in lagu fuliyo koodka mashiinka farsamada ee eBPF iyadoo la adeegsanayo xamuulka kernel-ka la bixiyo. Xirmooyinka lagu taageerayo eBPF ee GCC waxaa diyaariyey injineero ka socda Oracle, kuwaas oo horey u haystay la siiyay Taageerada eBPF ee GNU binutils. Simulator iyo patches ee GDB ayaa sidoo kale ku jira horumar, kaas oo kuu ogolaanaya inaad ka saarto barnaamijyada eBPF adoon ku shubin kernel-ka.

Barnaamijyada eBPF waxaa lagu qeexi karaa qayb ka mid ah luqadda C, oo la ururiyay oo lagu shubay kernel-ka. Kahor inta aan la dilin, turjubaanka eBPF waxa uu hubiyaa bytecode-ka isticmaalka tilmaamaha la ogolyahay oo waxa uu ku soo rogaa xeerar gaar ah koodka (tusaale, ma jiro wareegyo).
Markii hore, aaladaha ku saleysan LLVM ayaa loo isticmaalay in lagu aruuriyo eBPF Linux. Taageerada eBPF ee GCC waa mid xiiso leh sababtoo ah waxay kuu ogolaaneysaa inaad isticmaasho hal qalab si aad u dhisto kernel Linux iyo eBPF, adoon rakibin ku-tiirsanaan dheeraad ah.

Qaabka barnaamijyada eBPF, waxaad abuuri kartaa maamulayaasha hawlgalka shabakada, shaandhaynta taraafikada, maareyn karta xawaaraha, nidaamka kormeerida, ka hortagga wicitaanada nidaamka, xakamaynta gelitaanka, tiriso inta jeer iyo wakhtiga hawlgallada, oo samee baafin adoo isticmaalaya kprobes/uprobes/tracepoints.

Source: opennet.ru

Add a comment