Framework maka ide ndị ọkwọ ụgbọ ala echedoro maka kernel Linux na Rust

Josh Triplett, onye na-arụ ọrụ na Intel ma nọ na kọmitii na-ahụ maka mmepe nke Crates.io, na-ekwu okwu na Open Source Technology Summit. webatara otu na-arụ ọrụ iji weta asụsụ nchara n'otu n'otu na asụsụ C na ngalaba mmemme sistemụ.

N'ime otu ndị na-arụ ọrụ nke na-eme ka a na-emepụta, ndị na-emepụta Rust, yana ndị injinia sitere na Intel, ga-akwadebe nkọwapụta nke na-akọwa ọrụ dị mkpa ka emejuputa na Rust maka mmemme usoro. Mmemme sistemụ na-achọkarị aghụghọ dị ala, dị ka imezu ntuziaka nhazi ihe dị mkpa yana inweta ozi zuru ezu gbasara steeti onye nrụpụta. N'ime atụmatụ ndị yiri nke ahụ emeberela maka Rust, nkwado maka ụlọ ndị a na-akpọghị aha, otu, ntinye asụsụ mgbakọ (macro "asm!") na usoro ọnụọgụ nke BFLOAT16 ka edepụtara.

Josh na-ekwere na ọdịnihu nke usoro mmemme bụ nke ajari, na C asụsụ na oge a na-ekwu na ebe na n'oge gara aga afọ e nwere site Assembly. Nchara
ọ bụghị naanị na-eme ka ndị mmepe kwụsị nsogbu ndị dị na asụsụ C nke na-ebilite n'ihi ọrụ dị ala na ebe nchekwa, ma na-enyekwa ohere iji ya mee ihe na mmepe nke usoro mmemme nke oge a.

N'oge mkparịta ụka arụmọrụ
Josh weputara echiche nke ịgbakwunye ikike ịzụlite ndị ọkwọ ụgbọala na Linux kernel n'asụsụ Rust, nke ga-eme ka o kwe omume ịmepụta ndị ọkwọ ụgbọala dị nchebe na nke ka mma na obere mgbalị, na-enweghị nsogbu dị ka ịnweta ebe nchekwa mgbe ahapụchara, efu. ihe nrịbama nrịbama na ngafe nke ihe nchekwa.

Greg Kroah-Hartman, onye na-ahụ maka idowe ngalaba kwụsiri ike nke kernel Linux, kwupụtara njikere ya itinye usoro maka mmepe ndị ọkwọ ụgbọ ala n'asụsụ Rust na kernel ma ọ bụrụ na ọ nwere ezigbo uru karịa C, dịka ọmụmaatụ, ọ ga-enye nchekwa. njikọ n'elu kernel API. Na mgbakwunye, Greg na-ewere usoro a naanị dị ka nhọrọ, ọ bụghị arụ ọrụ na ndabara, ka ọ ghara itinye nchara ka ọ bụrụ ịdabere na kernel.

Ọ tụgharịrị na ọtụtụ ndị otu na-arụ ọrụ na ntụziaka a. Dịka ọmụmaatụ, ndị mmepe sitere na ụlọ ọrụ "Fish in a Barrel" kwadebere Toolkit maka ide modul a na-ebu ibu maka Linux kernel n'asụsụ Rust, na-eji usoro ihe nlegharị anya n'elu oghere na kernel iji kwalite nchekwa. A na-emepụta akwa akwa na-akpaghị aka dabere na faịlụ nkụnye kernel dị ugbu a site na iji akụrụngwa kechie. A na-eji Clang eme akwa akwa. Na mgbakwunye na interlayers, modul gbakọtara na-eji ngwugwu staticlib.

Ndekọ na-eto eto Ọrụ ọzọ lekwasịrị anya na ndị na-emepe emepe ndị ọkwọ ụgbọ ala maka sistemu agbakwunyere na ngwaọrụ IoT, nke na-ejikwa bindgen mepụta ọkwa dabere na faịlụ nkụnye kernel. Usoro ahụ na-enye gị ohere imeziwanye nchekwa onye ọkwọ ụgbọ ala n'emeghị mgbanwe na kernel - kama ịmepụta ọkwa ndị ọzọ maka ndị ọkwọ ụgbọ ala na kernel, a na-atụ aro igbochi nsogbu na nhazi nchịkọta, na-eji asụsụ nchara dị nchebe karị. A na-eche na usoro dị otú ahụ nwere ike ịchọ ndị na-emepụta akụrụngwa na-emepụta ndị ọkwọ ụgbọ ala ngwa ngwa n'emeghị nyocha nke ọma.

Ọ bụghị ọrụ niile e bu n'obi ka emejuputala ya, mana usoro ahụ adịlarị mma maka ọrụ ma jiri ya dee onye ọkwọ ụgbọ ala na-arụ ọrụ maka LAN9512 USB Ethernet njikwa na-enye na osisi Raspberry Pi 3. Onye ọkwọ ụgbọ ala smsc95xx dị ugbu a, nke edere na ya. C asụsụ. Achọpụtara na nha modul na elu site na ihe ndị na-agba ọsọ oge mgbe ị na-emepụta onye ọkwọ ụgbọ ala na Rust abaghị uru, nke na-enye ohere iji usoro ahụ mee ihe maka ngwaọrụ ndị nwere oke ego.

isi: opennet.ru

Tinye a comment