Microsoft waxay daabacday hirgelinta nidaamka hoose ee eBPF si loogu isticmaalo Windows, kaas oo u oggolaanaya fulinta hawl-wadeennada aan kala sooca lahayn ee ku shaqeeya heerka kernel-ka nidaamka hawlgalka. eBPF waxay bixisaa turjubaan bytecode ah oo isku-dhafan oo kernel ah, taasoo awood u siinaysa abuurista hawl-wadeennada hawlgalka shabakadda ee la rari karo, xakamaynta gelitaanka, iyo la socodka nidaamka. eBPF waxaa lagu daray kernel-ka. Linux Tan iyo markii la sii daayay 3.18, waxay awood u siineysaa farsamaynta xirmooyinka shabakadaha soo galaya/baxaya, dib u habeynta baakadaha, maaraynta xawaaraha, dhexda wicitaanka nidaamka, xakamaynta gelitaanka, iyo raadinta. Thanks to compilation-ka waqtiga-dhabta ah (JIT), bytecode waxaa loo turjumaa tilmaamaha mashiinka duulista waxaana lagu fuliyaa waxqabadka koodhka la soo ururiyay. koodhka isha eBPF ee Windows laga heli karo shatiga MIT.
eBPF ee Windows waxaa loo isticmaali karaa qalabka eBPF ee jira wuxuuna bixiyaa API caadi ah oo loo isticmaalo codsiyada eBPF ee ku jira LinuxWaxyaabaha kale, mashruucu wuxuu kuu ogolaanayaa inaad ku ururiso koodka ku qoran C oo aad u geliso bytecode eBPF adoo isticmaalaya isku-darka eBPF ee caadiga ah ee ku salaysan Clang oo horey loogu sameeyay Linux Maareeyayaasha eBPF ee ku yaal dusha sare ee kernel-ka Windows, iyadoo la bixinayo lakab iswaafajin gaar ah iyo taageeridda API-ga caadiga ah ee Libbpf si loogu waafajiyo codsiyada la falgalaya barnaamijyada eBPF. Tan waxaa ku jira lakabyada bixiya Linux- sida jillaabyada XDP (eXpress Data Path) iyo xidhitaanka godka, taasoo soo koobaysa marin u helidda xidhmooyinka shabakadda iyo darawallada shabakadda WindowsQorshayaashu waxay ku jiraan bixinta iswaafajin buuxda oo heer-ileed ah oo lala yeesho maamulayaasha caadiga ah ee eBPF. Linux.

Farqiga ugu muhiimsan ee u dhexeeya eBPF iyo Windows Xalku waa isticmaalka beddelka xaqiijinta bytecode, oo asal ahaan ay soo jeediyeen shaqaalaha VMware iyo cilmi-baarayaasha jaamacadaha Kanada iyo Israa'iil. Xaqiijiyuhu wuxuu ku shaqeeyaa hab gooni ah oo go'doonsan oo ku jira booska isticmaalaha waxaana la adeegsadaa ka hor inta aan la fulin barnaamijyada BPF si loo aqoonsado khaladaadka loona joojiyo falalka xaasidnimada leh ee iman kara.
Si aad u gasho eBPF Windows Habka falanqaynta joogtada ah ee ku salaysan Fasiraadda Abstract ayaa la isticmaalaa, taas oo, marka la barbar dhigo xaqiijinta eBPF, Linux Habkani wuxuu muujinayaa heer been abuur ah oo hooseeya, wuxuu taageeraa falanqaynta wareegga, wuxuuna hubiyaa in si fiican loo cabbiri karo. Waxay tixgelinaysaa qaabab fulineed oo kala duwan oo laga helo falanqaynta barnaamijyada eBPF ee jira.
Xaqiijinta ka dib, bytecode-ka waxaa loo wareejiyaa turjumaan ku socda heerka kernel, ama waxaa la sii maraa isku-duwaha JIT, oo ay ku xigto fulinta koodka mashiinka natiijada leh ee xuquuqda kernel-ka. Si loo go'doomiyo maamulayaasha eBPF ee heerka kernel-ka, habka HVCI (HyperVisor-enforced Code Integrity) ayaa la isticmaalaa, kaas oo adeegsada aaladaha farsamada si loo ilaaliyo hababka kernel-ka oo bixiya xaqiijinta daacadnimada koodhka fulinta iyadoo la adeegsanayo saxeex dhijitaal ah. Xaddidaadda HVCI waa in ay xaqiijin karto oo kaliya barnaamijyada eBPF ee la turjumay oo aan lala isticmaali karin JIT (waxaad leedahay doorasho mid waxqabad ama ammaan dheeraad ah).
Source: opennet.ru
