BCC trace eszköz megvalósítása libbpf könyvtárral (**folyamatban**)

Leírás: Az eBPF egy virtuális gép és hozzá tartozó bájtkód nyelv, amely a Linux kernel része. Segítségével bizonyos pontokon beavatkozhatunk a kernel működésébe de monitorozhatjuk is (valamint felhasználói alkalmazások működését is). A BCC ilyen monitorozó eszközök gyűjteménye, melyek Python nyevlen lettek implementálva és használják az eBPF virtuális gép képességeit teljesítményinformációk kinyerésére. A BCC trace egy általános tracer, ami képes bármilyen (értelmes gépi kódú utasításhatárnál) memóriacímre eBPF programot elhelyezni, amiben tetszőleges memória- és regisztertartalmakat irathatunk ki. A BCC könyvtár Pythonon és több külső függőségen alapszik, ezért a működése lassabb és memóriaigényesebb. Az eszközök egy része ezért C nyelven a libbpf könyvtárra lett portolva, ezek a libbpf-tools könyvtárban érhetőek el. A dolgozat célja a BCC trace programjának a portolása lenne C nyelvre a libbpf könyvtár felhasználásával. Az eredménye egy github pull-request lenne a kóddal, de ennek beolvasztása nem feltétele a szakdolgozat sikeres teljesítésének.

Segítség a munkához:

Ajánlott kompetenciák: Python és C programnyelv ismerete és erős Linux alapok

Szint: nehéz

Related