GCC-sse on vÔetud eBPF-i kompilaatori taust.

GCC kompilaatorite kogusse. vÔetud kood programmid nende kompileerimiseks, mis töötavad Linuxi kernelis siseselt interpreteeritud baitkoodiga. eBPF. JIT-kompileerimise kasutamise tÔttu tÔlgitakse kÀrbitud kood reaalajas masinainstruktsioonideks ja tÀidetakse natiivse koodi toimivusega. eBPF-i toetavad patchid on vÔetud harusse, mille pÔhjal arendatakse GCC 10 vÀljaannet.

Lisaks baitkoodi genereerimise taustale on GCC-s hÔlmatud ka libgcc port eBPF-i jaoks ning ELF-failide loomiseks vajalikud tööriistad, mis vÔimaldavad koodi tÀita eBPF-i virtuaalkeskkonnas koos tuuma poolt pakutud laadijatega. eBPF-i toetavad patchid GCC-s on koostatud Oracle'i inseneride poolt, kes on eelnevalt juba taganud eBPF-i toe GNU binutilsis. Arendamisel on ka simulaator ja patchid GDB-le, mis vÔimaldavad eBPF-programme siluda ilma tuuma laadimiseta.

eBPF-i programmid vĂ”ivad olla mÀÀratud C keele alamsĂŒsteemis, neid saab kompileerida ja laadida tuuma. Enne tĂ€itmist kontrollib eBPF-i interpreter baitkoodi lubatud kĂ€skude osas ja kehtestab koodile teatud reeglid (nĂ€iteks silmade puudumine).
Alguses kasutati eBPF-i kompileerimiseks Linuxis LLVM-i alapĂ”hjaliste tööriistade komplekti. eBPF-i tugi GCC-s on huvitav, kuna see vĂ”imaldab kasutada ĂŒhte tööriistade komplekti Linuxi tuumakoodi ja eBPF-programmide koostamiseks, ilma lisade sĂ”ltuvusi paigaldamata.

eBPF programmide kujul on vĂ”imalik luua vĂ”rgutegevuste töötlejaid, filtreerida liiklust, kontrollida ribalaiust, jĂ€lgida sĂŒsteemide tööd, pĂŒĂŒda sĂŒsteemi kutseid, kontrollida juurdepÀÀsu, lugeda toimingute sagedust ja kestust, teha jĂ€lgimist kprobesi/uprobesi/tracepointide abil.

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster