ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-28, Tuesday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

eBPF කේතයේ කාර්ය සාධනය මැනීමේ නව ක්‍රමය – Linux perf සමඟ

eBPF කේතයේ කාර්ය සාධනය මැනීමේ නව ක්‍රමය – Linux perf සමඟ

Linux පද්ධති වල eBPF (extended Berkeley Packet Filter) වැඩසටහන් භාවිතා කරන ඕනෑම සංවර්ධකයකුට, එම කේතය පද්ධතියේ කාර්ය සාධනයට කොපමණ බලපෑමක් දෙනවාදැයි මැනීම අත්‍යවශ්‍ය වේ. නව ලිපියකින්, eBPF හුක් එකක් (file open hook) එක් කිරීමෙන් පසු ඇතිවන ප්‍රතිපලය හඳුනා ගැනීමට C භාෂාවෙන් ලියූ සරළ benchmark පරීක්ෂණයක් පියවරෙන් පියවර පැහැදිලි කරයි.

eBPF කේතය පරීක්ෂා කිරීමේ ක්‍රියාපටිපාටිය

ලේඛනයේ පළමු කොටසේ, file open ක්‍රියාවලිය මැනීමට අවශ්‍ය සරල C වැඩසටහනක් දක්වා ඇත. මෙය SYS_openat system call එක සෘජුවම භාවිතා කරයි, libc wrapper එකක් නොව. පළමු 10% පරීක්ෂණ ප්‍රතිඵල warm‑up ලෙස නොගනී, එවිට cache‑ය පූර්ණයෙන් පිරී ඇති අවස්ථාවක් ලබා ගත හැක. පරීක්ෂණය clock_gettime VDSO භාවිතයෙන් ns මට්ටමේ කාලය ගනී, එමනිසා අඩුම overhead එකක් ඇත.

ඉදිරියට, eBPF කේතය JIT (Just‑In‑Time) සක්‍රිය කිරීම, net.core.bpf_jit_enable සහ net.core.bpf_jit_kallsyms sysctl පරාමිතීන් සකස් කිරීම අවශ්‍ය වේ. මෙයින් perf tool එකට JIT‑compiled BPF symbols නාමයන් ලෙස පෙන්වීමට හැකියාව ලැබේ. bpftool prog show සහ rg (ripgrep) භාවිතයෙන් ලකුණු සොයා ගැනීම, LSM (Linux Security Modules) හුක් එකක් මැනීමට කරුණු සපයයි.

perf command එක perf record -g --call-graph fp -e cycles:k -F 997 -o ~/perf.data -- taskset -c 3 ලෙස ක්‍රියාත්මක කරයි. මෙය CPU 3 එකට පින් කරමින්, CPU migration ශබ්දය අඩු කරයි; අති උසස් ප්‍රාථමිකත්වය (real‑time priority) ලබා දී benchmark එක අඩුම ව්‍යාධියකින් පවත්වා ගනී.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

  • විකසකයන් – eBPF යනු Linux kernel තුළ සෘජු කේතය රන් කිරීමේ ඉතා බලවත් තාක්ෂණයක්. මෙය සාර්ථකව මැනීමේ ක්‍රමයක් දැන ගැනීම, ශ්‍රී ලංකාවේ open‑source සහ cloud‑native සංවර්ධනයේ නව මට්ටමක් ගොඩනැගීමට උපකාරී වේ.
  • උපාධි සිසුන් – Linux kernel internals, performance profiling, සහ JIT compilation ගැන අත්හදා බැලීම, පරිගණක ඉංජිනේරු පාඨමාලා වල ප්‍රායෝගික අංශයක් ලෙස අගය කරගත හැක.
  • ව්‍යාපාර – eBPF භාවිතයෙන් security, observability, හා network filtering වැනි සේවාවන් කාර්යක්ෂමව ඉදිරිපත් කළ හැක. ඒ සඳහා ප්‍රතිපල මැනීමේ නිවැරදි ක්‍රමයක් ඇතිවීම, සේවා ගුණාත්මකභාවය හා පාරිභෝගික තෘපතිය වැඩි කරනවා.

අවසන් වශයෙන්, eBPF කේතය ප්‍රොෆයිල් කිරීම සඳහා Linux perf, bpftool, සහ sysctl පරාමිතීන් නිවැරදිව සකස් කිරීම අත්‍යවශ්‍යයි. මෙය ඔබේ kernel‑level වැඩසටහන් වල bottleneck හඳුනා ගැනීමට, පද්ධතියේ පූර්ණ කාර්ය සාධනය තහවුරු කිරීමට සහ අනාගතයේ වැඩි දියුණුවකට පදනමක් සපයයි.

💡 ඔබේ Linux පද්ධතියේ eBPF කාර්ය සාධනය අදම මැනන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Hacker News Frontpage ↗
#eBPF #perf #Linux #profiling #benchmarking