ГЦЦ сада укључује позадину за компилацију у еБПФ

Укључено у ГЦЦ пакет компајлера прихваћен код за компајлирање програма за бајткод интерпретер уграђен у Линук кернел еБПФ. Захваљујући употреби ЈИТ компилације, бајт-код кернела се у ходу преводи у машинске инструкције и извршава уз перформансе изворног кода. Закрпе са подршком за еБПФ прихваћено на грану из које је развијено ГЦЦ 10 издање.

Поред позадинског дела за генерисање бајткода, ГЦЦ укључује либгцц порт за еБПФ и алате за генерисање ЕЛФ датотека које омогућавају извршавање кода у еБПФ виртуелној машини користећи учитаваче које обезбеђује кернел. Закрпе за подршку еБПФ-а у ГЦЦ-у припремили су инжењери из Орацле-а, који су то већ урадили обезбеђено еБПФ подршка у ГНУ бинутилс. Симулатор и закрпе за ГДБ су такође у развоју, што ће вам омогућити да отклањате грешке у еБПФ програмима без њиховог учитавања у кернел.

Програми за еБПФ се могу дефинисати у подскупу језика Ц, компајлирати и учитати у кернел. Пре извршења, еБПФ интерпретер проверава бајт код да ли користи дозвољене инструкције и намеће одређена правила коду (на пример, без петљи).
У почетку су алати засновани на ЛЛВМ-у коришћени за компајлирање еБПФ-а на Линук-у. Подршка за еБПФ у ГЦЦ-у је занимљива јер вам омогућава да користите један комплет алата за прављење Линук кернела и еБПФ програма, без инсталирања додатних зависности.

У облику еБПФ програма, можете креирати руковаоце мрежним операцијама, филтрирати саобраћај, управљати пропусним опсегом, надгледати системе, пресрести системске позиве, контролисати приступ, бројати учесталост и време операција и вршити праћење помоћу кпробес/упробес/трацепоинтс.

Извор: опеннет.ру

Додај коментар