GCC கம்பைலர் தொகுப்பில் சேர்க்கப்பட்டுள்ளது
பைட்கோட் உருவாக்கத்திற்கான பின்தளத்திற்கு கூடுதலாக, GCC ஆனது eBPF க்கான libgcc போர்ட் மற்றும் ELF கோப்புகளை உருவாக்குவதற்கான கருவிகளை உள்ளடக்கியது, இது கர்னல் வழங்கிய லோடர்களைப் பயன்படுத்தி eBPF மெய்நிகர் கணினியில் குறியீட்டை இயக்குவதை சாத்தியமாக்குகிறது. GCC இல் eBPF ஐ ஆதரிப்பதற்கான இணைப்புகளை ஏற்கனவே ஆரக்கிளின் பொறியாளர்கள் தயாரித்தனர்
eBPF க்கான நிரல்களை C மொழியின் துணைக்குழுவில் வரையறுக்கலாம், தொகுக்கப்பட்டு கர்னலில் ஏற்றப்படும். செயல்படுத்துவதற்கு முன், eBPF மொழிபெயர்ப்பாளர் அனுமதிக்கப்பட்ட வழிமுறைகளைப் பயன்படுத்துவதற்கான பைட்கோடைச் சரிபார்த்து, குறியீட்டில் சில விதிகளை விதிக்கிறார் (எடுத்துக்காட்டாக, சுழல்கள் இல்லை).
ஆரம்பத்தில், லினக்ஸில் eBPF ஐ தொகுக்க LLVM- அடிப்படையிலான கருவிகள் பயன்படுத்தப்பட்டன. GCC இல் eBPF ஆதரவு சுவாரஸ்யமானது, ஏனெனில் இது கூடுதல் சார்புகளை நிறுவாமல், Linux கர்னல் மற்றும் eBPF நிரல்களை உருவாக்க ஒரு கருவித்தொகுப்பைப் பயன்படுத்த அனுமதிக்கிறது.
eBPF நிரல்களின் வடிவத்தில், நீங்கள் நெட்வொர்க் ஆபரேஷன் ஹேண்ட்லர்களை உருவாக்கலாம், ட்ராஃபிக்கை வடிகட்டலாம், அலைவரிசையை நிர்வகிக்கலாம், சிஸ்டம்களை கண்காணிக்கலாம், சிஸ்டம் அழைப்புகளை இடைமறிக்கலாம், அணுகலைக் கட்டுப்படுத்தலாம், செயல்பாடுகளின் அதிர்வெண் மற்றும் நேரத்தை எண்ணலாம் மற்றும் kprobes/uprobes/tracepoints ஐப் பயன்படுத்தி டிரேசிங் செய்யலாம்.
ஆதாரம்: opennet.ru