Anga mo te tuhi taraiwa haumaru mo te pata Linux i Rust

Ko Josh Triplett, e mahi ana i Intel, kei te komiti e whakahaere ana i te whanaketanga o Crates.io, e korero ana i te Open Source Technology Summit. whakaurua he roopu mahi e whai ana ki te kawe i te reo Rust kia rite ki te reo C i roto i nga kaupapa o nga punaha.

I roto i tetahi roopu mahi kei te hangahanga, ko nga kaiwhakawhanake a Rust, me nga miihini mai i Intel, ka whakarite i nga whakaritenga e whakaatu ana i nga mahi e tika ana kia whakatinanahia ki Rust mo nga kaupapa rorohiko. He maha nga wa e hiahia ana te hotaka punaha ki te raweke taumata-iti, penei i te whakahaere i nga tohutohu a te kaiwhakatikatika me te whiwhi korero taipitopito mo te ahua o te tukatuka. O nga ahuatanga rite tonu kua whakawhanakehia mo Rust, he tautoko mo nga hanganga kore ingoa, uniana, whakauru reo hui (te tonotono "asm!") me te whakatakotoranga nama ira maanu BFLOAT16.

E whakapono ana a Josh ko te wa kei te heke mai o nga papatono punaha no Rust, a ko te reo C i roto i nga ahuatanga hou e kii ana i te waahi i nga tau kua hipa i nohoia e te Runanga. Waikura
ehara i te mea he whakaora noa i nga kaiwhakawhanake mai i nga raru kei roto i te reo C ka puta mai na te iti o te mahi me te mahara, engari ka whai waahi ki te whakamahi i roto i te whakawhanaketanga o nga tauira kaupapa hou.

I roto i whakawhitinga kōrero whakaaturanga
I puta te whakaaro a Josh ki te taapiri i te kaha ki te whakawhanake i nga taraiwa i roto i te kakano Linux i roto i te reo Rust, e taea ai te hanga i nga taraiwa haumaru me te pai ake me te iti o te kaha, kaore he raruraru penei i te uru mahara i muri i te watea, null nga tohu tohutoro me te nui o te parare.

Ko Greg Kroah-Hartman, ko ia te kawenga mo te pupuri i te peka pumau o te kakano Linux, i kii i tana ineine ki te taapiri i tetahi anga mo te whakawhanake i nga taraiwa i roto i te reo Rust ki te kernel mena he tino painga ki runga i a C, hei tauira, ka noho haumaru. herenga ki runga Kernel API. I tua atu, ka whakaarohia e Greg tenei anga hei waahanga anake, kaore i te kaha ma te taunoa, kia kore ai e whakauruhia a Rust hei whakawhirinakitanga hanga ki runga i te kernel.

I puta mai he maha nga roopu e mahi ana i tenei huarahi. Hei tauira, ko nga kaihanga mai i te kamupene "Fish in a Barrel" kua rite he kete taputapu mo te tuhi i nga waahanga ka taea te utaina mo te pata Linux i roto i te reo Rust, ma te whakamahi i te huinga paparanga waitara i runga i nga atanga me nga hanganga kernel hei whakanui ake i te haumarutanga. Ka hangaia aunoa nga papa i runga i nga konae pane pane kernel e whakamahi ana i te whaipainga bindgen. Ka whakamahia te Clang ki te hanga paparanga. Hei taapiri atu ki nga taapiri, ka whakamahia e nga waahanga kua kohia te kete staticlib.

Whakataurite ka whanake Ko tetahi atu kaupapa i arotahi ki te whakawhanake i nga taraiwa mo nga punaha whakauru me nga taputapu IoT, e whakamahi ana hoki i te bindgen ki te whakaputa paparanga i runga i nga konae pane pane. Ma te anga ka taea e koe te whakapai ake i te haumarutanga o te taraiwa me te kore e whakarereke i te kakano - hei utu mo te hanga i nga taumata motuhake mo nga kaitaraiwa i roto i te kernel, ka whakaarohia kia aukati nga raru i te waahanga whakahiato, ma te whakamahi i te reo Rust haumaru ake. E whakapaetia ana tera pea te huarahi e hiahiatia ana e nga kaihanga taputapu ki te whakawhanake i nga taraiwa rangatira i runga i te tere me te kore e whakahaere i nga arotake tika.

Kaore ano kia whakatinanahia nga mahi katoa, engari kua tino tika te anga mo te mahi, a, i whakamahia hei tuhi i tetahi taraiwa mahi mo te LAN9512 USB Ethernet kaiwhakahaere i tukuna i roto i te poari Raspberry Pi 3. Ko te taraiwa smsc95xx o naianei, i tuhia e in C reo. E tohuhia ana ko te rahi o te waahanga me te teitei mai i nga waahanga oma i te wa e whakawhanake ana i te taraiwa i roto i te Rust he mea iti, e taea ai te whakamahi i te anga mo nga taputapu he iti rawa nga rauemi.

Source: opennet.ru

Tāpiri i te kōrero