GCC компиляторлар жиынтығына кіреді
Байт-кодты генерациялауға арналған серверге қосымша, GCC eBPF үшін libgcc портын және ядромен қамтамасыз етілген жүктеушілер арқылы eBPF виртуалды машинасында кодты орындауға мүмкіндік беретін ELF файлдарын жасауға арналған құралдарды қамтиды. GCC-де eBPF-ді қолдауға арналған патчтарды Oracle инженерлері дайындаған, олар бұрыннан бар
eBPF бағдарламаларын Си тілінің ішкі жиынында анықтауға, құрастыруға және ядроға жүктеуге болады. Орындау алдында eBPF интерпретаторы рұқсат етілген нұсқауларды пайдалану үшін байт кодты тексереді және кодқа белгілі бір ережелерді жүктейді (мысалы, циклдар жоқ).
Бастапқыда Linux жүйесінде eBPF құрастыру үшін LLVM негізіндегі құралдар пайдаланылды. GCC жүйесіндегі eBPF қолдауы қызықты, себебі ол қосымша тәуелділіктерді орнатпай, Linux ядросы мен eBPF бағдарламаларын құру үшін бір құралдар жинағын пайдалануға мүмкіндік береді.
eBPF бағдарламалары түрінде желі жұмысының өңдеушілерін жасауға, трафикті сүзуге, өткізу қабілеттілігін басқаруға, жүйелерді бақылауға, жүйелік қоңырауларды ұстауға, қол жеткізуді басқаруға, операциялардың жиілігі мен уақытын санауға және kprobes/uprobes/tracepoints көмегімен бақылауды жүзеге асыруға болады.
Ақпарат көзі: opennet.ru