Microsoft vēlas paplašināt eBPF no Linux kodola uz Windows

Pēc Windows apakšsistēmas Linux (WSL), kuru dažādi operētājsistēmas lietotāji ir labi uztvēruši, Microsoft nolēma aizņemties citu svarīgu tehnoloģiju no Linux kopienas, eBPF (Berkeley Extended Packet Filter) un nogādājiet to sistēmā Windows.

Uzņēmums teica, ka tā nebūs eBPF dakša, Jā, tas tiks izmantots esošajos projektos, tostarp IOVisor uBPF projektā un PREVAIL verificētājā, lai palaistu eBPF API un programmas savās operētājsistēmās, ieskaitot Windows 10 un Windows Server 2016 (vai jaunākas).

Pēdējo piecu gadu laikā Microsoft, kas šīs tūkstošgades sākumā joprojām uzskatīja Linux par datoru industrijas vēzi, ir kļuvis par vienu no lielākajiem kodola izstrādes veicinātājiem.

Izmantojot WSL, viņš pavēra ceļu vairākām lietojumprogrammām operētājsistēmā Windows, ļaujot administratoriem un programmētājiem izmantot Linux rīkus un pakalpojumus tieši no Windows, bez nepieciešamības neko citu virtualizēt vai veidot sarežģītas infrastruktūras.

Tagad Microsoft izvēlas pievienot eBPF operētājsistēmai Windows kā Šī ir tehnoloģija, kas labi pazīstama ar savu programmējamību un veiklību, it īpaši operētājsistēmas kodola paplašināšanai tādiem lietošanas gadījumiem kā aizsardzība pret DoS uzbrukumiem un novērojamība.

Tā ir virtuāla mašīna, kuras pamatā ir reģistrs paredzēts darboties ar 64 bitu pielāgotu RISC arhitektūru, izmantojot JIT kompilāciju Linux kodolā. Kā tādas, eBPF programmas ir īpaši piemērotas sistēmu atkļūdošanai un analīzei, piemēram, failu sistēmas uzraudzībai un žurnālzvaniem.

EBPF attiecības ar Linux kodolu ir salīdzinātas ar JavaScript attiecībām ar tīmekļa lapām, ļauj modificēt Linux kodola darbību, ielādējot darbojas eBPF programmu, nemodificējot kodola avota kodu vai ielādējot kodola moduli.

eBPF ir viens no lielākajiem Linux kodola jauninājumiem pēdējās desmitgades laikā. Tā kā bija zināma interese pielāgot tehnoloģiju citām operētājsistēmām, Microsoft nolēma izmēģināt Windows programmatūru. Projekts ar nosaukumu ebpf-for-windows ir atvērtā koda un pieejams vietnē GitHub.

"Projekta ebpf-for-windows mērķis ir dot iespēju izstrādātājiem izmantot pazīstamās eBPF rīku ķēdes un lietojumprogrammu saskarnes (API) esošajās Windows versijās," pirmdienas bloga ierakstā skaidroja Deivs Talers, Microsoft asociētais programmatūras inženieris un Poorna Gaddehosur, Microsoft vecākais programmatūras inženieris.

"Pamatojoties uz citu darbu, šim projektam ir nepieciešami vairāki esošie atvērtā koda eBPF projekti un tiek pievienots vidējais slānis, lai palaistu Windows virsū."

Uzņēmums to nesauc par eBPF dakšu. Tāpēc Windows izstrādātāji baitkoda ģenerēšanai varēs izmantot tādus rīkus kā clang.

eBPF avota kods, kuru var ievietot jebkurā lietojumprogrammā vai izmantot kopā ar Windows netsh komandrindu. Pēc uzņēmuma domām, tas tiek darīts, izmantojot koplietojamu bibliotēku, kurā tiek izmantotas Libbpf API.

Bibliotēka nodod EBPF baitkodu caur PREVAIL Windows drošības vidē, kas ļauj kodola komponentam uzticēties lietotāja režīma dēmonam, kas parakstīts ar uzticamu atslēgu.

Microsoft inženieri saka, ka projekta mērķis ir sniegt atbalstu eBPF kodam, izmantojot āķus un palīgus, kas pastāv gan Linux, gan Windows.

"Linux nodrošina daudzas saites un palīgus, no kuriem daži ir ļoti specifiski Linux (piemēram, izmantojot iekšējās Linux datu struktūras), kas nebūtu piemērojami citām platformām," viņi teica.

Beidzot Ja jūs interesē uzzināt vairāk par to, jūs varat pārbaudīt informāciju Šajā saitē. Kamēr tiem, kas ir ieinteresēti, lai varētu apskatīt eBPF repozitoriju vietnē GitHub, viņi to var izdarīt no plkst. šo saiti.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.