Microsoft želi proširiti eBPF sa Linux jezgre na Windows

Nakon Windows podsustava za Linux (WSL), koji je dobro prihvaćen od različitih korisnika operativnog sistema, Microsoft je odlučio posuditi još jednu važnu tehnologiju od Linux zajednice, eBPF (Berkeley Extended Packet Filter) i prenesite ga u Windows.

Kompanija rekao da to neće biti račvanje eBPF-a, Da, ovo će se koristiti u postojećim projektima, uključujući IOVisor uBPF projekat i PREVAIL verifikator, za pokretanje eBPF API-ja i programa na njihovim vlastitim operativnim sistemima, uključujući Windows 10 i Windows Server 2016 (ili noviji).

Tokom proteklih pet godina, Microsoft, koji je na početku ovog milenijuma još uvijek vidio Linux kao rak računarske industrije, postao je jedan od najvećih doprinosa razvoju jezgra.

Pomoću WSL-a otvorio je put za više aplikacija na Windows-u, omogućavajući sistemskim administratorima i programerima da koriste Linux alate i usluge direktno iz Windows-a, bez potrebe da virtuelizuju bilo šta drugo ili grade složene infrastrukture.

Sada Microsoft odlučuje dodati eBPF u Windows, kao ovo je tehnologija dobro poznata po svojoj sposobnosti programiranja i okretnosti, posebno za proširenje jezgre operativnog sistema, za slučajeve upotrebe kao što su zaštita od DoS napada i uočljivost.

To je virtualna mašina zasnovana na registru dizajniran za pokretanje na 64-bitnoj RISC arhitekturi putem JIT kompilacije na Linux jezgri. Kao takvi, eBPF programi posebno su pogodni za otklanjanje grešaka i analizu sistema, kao što su nadgledanje sistema datoteka i pozivi dnevnika.

Odnos eBPF-a prema Linux jezgri uspoređen je s odnosom JavaScript-a prema web stranicama, omogućava izmjenu ponašanja Linux kernela učitavanjem pokrenutog eBPF programa, bez izmjene izvornog koda jezgre ili učitavanja modula kernela.

eBPF predstavlja jednu od najvećih inovacija Linux kernela u posljednjoj deceniji. I budući da je postojao određeni interes za prilagođavanje tehnologije drugim operativnim sistemima, Microsoft je odlučio dati Windows softveru priliku. Projekt, nazvan ebpf-for-windows, otvoren je izvor i dostupan je na GitHub-u.

"Cilj projekta ebpf-for-windows je omogućiti programerima upotrebu poznatih eBPF lanaca alata i sučelja za programiranje aplikacija (API-ji) u postojećim verzijama Windows-a", objasnio je Dave Thaler u objavi na blogu od ponedjeljka, Microsoft Associate Software Engineer i Poorna Gaddehosur, Microsoftov viši softverski inženjer.

"Na osnovu rada drugih, ovaj projekat uzima nekoliko postojećih eBPF projekata otvorenog koda i dodaje srednji sloj koji će se izvoditi na vrhu Windowsa."

Kompanija to ne naziva eBPF vilicom. Stoga će programeri za Windows moći koristiti alate poput clang za generiranje bajtkoda.

eBPF iz izvornog koda koji se može umetnuti u bilo koju aplikaciju ili koristiti s Windows naredbenim retkom netsh. Prema navodima kompanije, to se radi putem zajedničke biblioteke koja koristi Libbpf API-je.

Biblioteka prolazi EBPF bajtkod kroz PREVAIL u Windows sigurnosnom okruženju koje komponenti jezgre omogućava da vjeruje demonu korisničkog režima potpisanom pouzdanim ključem.

Microsoftovi inženjeri kažu da je cilj projekta pružiti podršku za eBPF kôd koristeći kuke i pomagače koji postoje i na Linuxu i na Windowsu.

"Linux nudi mnoge veze i pomagače, od kojih su neki vrlo specifični za Linux (koristeći, na primjer, interne strukture podataka) koji ne bi bili primjenjivi na druge platforme," rekli su.

Konačno Ako ste zainteresirani da saznate više o tome, možete provjeriti detalje Na sledećem linku. Dok oni koji su zainteresirani da mogu pogledati spremište eBPF na GitHub-u, to mogu učiniti iz sljedeći link.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.