اوریکل شرکت
DTrace لا دمخه
eBPF یو بایټکوډ ژباړونکی دی چې په لینکس کرنل کې جوړ شوی چې تاسو ته اجازه درکوي د شبکې عملیاتي هینډلرونه رامینځته کړئ ، د سیسټم فعالیت نظارت وکړئ ، د سیسټم تلیفونونه مداخله وکړئ ، کنټرول لاسرسی ، د وخت ساتلو سره پیښې پروسس کړئ (perf_event_open) ، د عملیاتو فریکوینسي او وخت محاسبه کړئ ، تعقیب ترسره کړئ kprobes/uprobes/tracepoints کارول. د JIT تالیف کارولو څخه مننه ، بایټ کوډ په الوتنه کې د ماشین لارښوونو ته ژباړل شوی او د اصلي کوډ فعالیت سره اجرا کیږي. DTrace د eBPF په سر کې پلي کیدی شي، ورته ورته چې دا د eBPF په سر کې دی
د DTrace ټیکنالوژي د سولاریس عملیاتي سیسټم لپاره رامینځته شوې ترڅو د سیسټم کرنل او پای غوښتنلیکونو متحرک تعقیب ستونزې حل کړي ، کارونکي ته دا وړتیا ورکوي چې د سیسټم چلند په تفصیل سره وڅاري او په ریښتیني وخت کې ستونزې تشخیص کړي. د ډیبګ کولو پرمهال ، DTrace د مطالعې شوي غوښتنلیکونو عملیات اغیزه نه کوي او په هیڅ ډول د دوی فعالیت اغیزه نه کوي ، کوم چې په الوتنه کې د چلولو سیسټمونو تحلیل تنظیم کولو ته اجازه ورکوي. د DTrace له قوتونو څخه، AWK ته ورته د لوړې کچې D ژبه یادونه شوې، په کوم کې چې د ټریس سکریپټونو لیکل خورا اسانه دي کله چې د EBPF لپاره په C, Python او Lua کې د بهرني کتابتونونو سره وړاندیز شوي هینډلرونو لیکلو وسیلو کارولو په پرتله. .
د اوریکل انجینران د GCC لپاره د eBPF بیکینډ جوړولو باندې هم کار کوي او دمخه یې خپور کړی
د بایټ کوډ رامینځته کولو لپاره د شالید سربیره ، د GCC لپاره وړاندیز شوي پیچونو کې د eBPF لپاره د libgcc بندر او د ELF فایلونو رامینځته کولو وسیلې هم شاملې دي ، دا ممکنه کوي چې د کرنل لخوا چمتو شوي لوډرونو په کارولو سره د eBPF مجازی ماشین کې کوډ اجرا کړي. د اوس لپاره، C کوډ په بایټکوډ کې ژباړل کیدی شي (د ټولې ژبې ځانګړتیاوې شتون نلري)، مګر په راتلونکي کې تمه کیږي چې د کارولو لپاره د C ژبې ځانګړتیاوې پراخې کړي، د نورو ژبو لپاره ملاتړ اضافه کړي، سمیلیټر رامینځته کړي، او د GCC ملاتړ اضافه کړي. د eBPF پروګرامونو د ډیبګ کولو لپاره پرته له دې چې کرنل ته پورته شي.
سرچینه: opennet.ru