„Rust“ sistema galėtų būti įdiegta branduolyje, kad patobulintų vairuotojus

„Rust Linux Linux“ branduolys

Joshas Triplettas, „Intel“ kompanija ir „Crates.io“ plėtros priežiūros komiteto narys, prieš kelias dienas jau pristatė darbo grupę savo kalboje „Open Source Technology Summit“ kurio tikslas - priartinti Rustą su C programuojant „Linux“ branduolį.

Kuriamoje darbo grupėje Rūdžių kūrėjai kartu su „Intel“ inžinieriais parengs specifikacijas tai gali išryškinti funkciją, kurią „Rust“ reikia įdiegti programuojant „Linux“ branduolyje. Sistemos programavimas dažnai reikalauja žemo lygio manipuliacijų, tokių kaip privilegijuotų procesoriaus instrukcijų vykdymas ir išsamios informacijos apie procesoriaus būseną gavimas.

Iš panašių „Rust“ jau plėtojamų galimybių remiama neįvardytų struktūrų parama, sąjungos (sąjunga), surinkėjo intarpai (makrokomanda „asm!“) ir slankiojo kablelio skaičiaus formatas BFLOAT16.

Joshas mano, kad sistemos programavimo ateitis priklauso Rustui, o C kalba šiuolaikinėse realybėse teigia esanti Asemblerio vieta praeityje. Rūdys ne tik palengvina specifinių C kalbos problemų, kylančių dėl žemo lygio darbo su atmintimi, kūrėjus, bet ir suteikia pritaikomumą kuriant šiuolaikines programavimo paradigmas.

Diskusijos apie Josh kalbą metu buvo išsakyta mintis:

pridėkite galimybę kurti „Rust“ kalbos tvarkykles prie „Linux“ branduolio, o tai leistų su minimaliomis pastangomis sukurti geresnes ir saugesnes tvarkykles, kurios palengvintų tokias problemas, kaip patekimas į atminties sritį ją atlaisvinus, nuorodos į nulinius rodiklius ir daugiau išeinant už ribų. buferis.

Gregas Kroahas-Hartmanas, atsakingas už stabilaus Linux branduolio atšakos palaikymą irx išreiškė norą prie branduolio pridėti „Rust“ tvarkyklės sistemą, jei ji turi realių pranašumų prieš C, pavyzdžiui, tai užtikrins saugų susiejimą per pagrindinę API. Be to, Gregas šią sistemą laiko tik kaip parinktį, kuri pagal numatytuosius nustatymus nėra aktyvi, kad Rust neįtrauktų į pagrindinių surinkimo priklausomybių skaičių.

Paaiškėjo, kad kelios komandos jau dirba šia kryptimi. Pavyzdžiui, „Fish in the Barrel“ kūrėjai parengė įrankių rinkinį, skirtą „Linux“ branduoliui įkraunamiems moduliams rašyti „Rust“ kalba, naudodamas abstrakčių sluoksnių rinkinį ant branduolio sąsajų ir struktūrų, kad padidintų saugumą.

Tarpiniai sluoksniai automatiškai generuojami pagal branduolio antraštės failus, pasiekiamus naudojant „bindgen“ įrankį. Clang naudojamas statyti tarpinius sluoksnius. Surinkti moduliai, be sluoksnių, naudoja „staticlib“ paketą.

Tuo pačiu metu rengiamas dar vienas projektas, orientuotas į įterptųjų sistemų valdiklių kūrimą ir daiktų interneto įrenginiai, kurie taip pat naudoja bindgen generuoti apykakles pagal branduolio antraštės failus.

Ši sistema leidžia pagerinti tvarkyklės saugumą nekeičiant branduolio; Užuot sukūrus papildomus tvarkyklių izoliacijos lygius branduolyje, siūloma blokuoti problemas kompiliavimo etape naudojant saugesnę „Rust“ kalbą.

Manoma, kad įrangos gamintojai galės skubiai išplėtoti šį metodą be tinkamo audito.

Dar nėra įdiegta visų numatytų funkcijų, bet karkasas jau yra gana tinkamas darbui ir naudojamas rašyti veikiančią tiekiamo LAN9512 USB Ethernet valdiklio tvarkyklę „Raspberry Pi 3“ plokštėje.

Buvo parašytas esamas smsc95xx tvarkyklė kaip orientacinį įgyvendinimą rašydami „Rust“ tvarkyklę C kalba.

Pažymima, kad modulio dydis ir vykdymo laiko komponentų pridėtinės išlaidos nėra reikšmingos kuriant „Rust“ tvarkyklę, kuri leidžia naudoti ribotų išteklių įrenginių sistemą.

Fuente: https://hub.packtpub.com


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   L1ch sakė

    Šaltinyje nerandu informacijos apie smsc95xx tvarkyklę arba kad kažkas bus įgyvendinta „Rust“ sistemoje „Linux“.