Možnost integracije podpore za Rust v jedro Linuxa 5.20 ni izključena

Na konferenci Open-Source Summit 2022 ki poteka te dni, v razdelku s pogostimi vprašanji, Linus Torvalds je omenil možnost zgodnje integracije v jedru Linuxa komponent za razvoj Gonilniki naprav v Rust.

Zato je bilo omenjeno, da bodo popravki, ki podpirajo Rust, morda sprejeti v naslednjem dnevniku sprememb, ki sestavlja sestavo jedra 5.20, ki je načrtovan za konec septembra.

Ne smemo pozabiti, da je Rust od lani postal eden izmed favoritov za vključitev v različne pomembne projekte in da je bilo v preteklem času že opravljeno delo v zvezi z implementacijo podpore Rust.

Med priznanimi projekti, ki jih rust zanima že od lani, lahko izpostavimo denimo Android, saj ga je zanimal Rust ker dopušča doseči zmogljivost, ki je blizu jezikom C in C++, ki omogoča, da se uporablja za razvoj nizkorazrednih delov platforme in komponent za vmesnik s strojno opremo.

Da bi zagotovil varnost kode C in C ++, Android uporablja izolacijo peskovnika, statično analizo in nejasne teste. Zmogljivosti izolacije peskovnika so omejene in so dosegle mejo svojih zmožnosti (nadaljnja razdrobljenost procesov z vidika porabe virov ni praktična).

Med omejitvami uporabe peskovnika omenjajo velike režijske stroške in večjo porabo pomnilnika, ki jo povzroča potreba po ustvarjanju novih procesov, pa tudi dodatno zakasnitev, povezano z uporabo IPC.

Rust-Android
Povezani članek:
Rust je že priljubljen pri razvoju Androida

Po drugi strani pa tega ne smemo pozabiti Linus Torvalds podal tudi svoje mnenje o Rustu in v katerem porabili za pregled izvajanja popravek možnosti nastavitve gonilnikov jezika Rust v jedru Linuxa in izrazil nekaj kritik.

Največ pritožb je povzročil možnost pobega "Panika okvare med izvajanjem" v napačnih situacijah, na primer v primeru pomanjkanja pomnilnika, ko lahko operacije dinamičnega dodeljevanja pomnilnika, vključno z operacijami jedra, ne uspejo.

Torvalds izjavil, da je takšna osredotočenost na jedro v osnovi nesprejemljiva, Če te točke ne razumete, lahko popolnoma zavrnete katero koli kodo, ki poskuša uporabiti tak pristop. Po drugi strani pa se je razvijalec popravka strinjal s težavo in jo menil za rešljivo.

Linus Torvalds
Povezani članek:
Rust ni bil izvzet iz kritik Linusa Torvaldsa

Toda minilo je nekaj mesecev, odkar je Linus dal svoje povratne informacije in trdo delo je bilo opravljeno za izboljšanje izvajanja. Kot tak, zahteva za vleko za jedro trenutno še ni bila poslana Torvaldsu, vendar je bil nabor popravkov dodatno revidiran, odstranjeni ključni besedi, preizkušen na veji linux-next kar nekaj časa in priveden v stanje, primerno za gradnjo abstrakcijskih slojev na vrhu podsistemov jedra, pisanje gonilnikov in modulov.

Podpora za Rust je na voljo kot možnost ki ni privzeto omogočen in ne povzroči, da je Rust vključen med zahtevane odvisnosti gradnje za jedro.

Predlagane spremembe omogočajo uporabo Rusta kot drugega jezika za razvoj gonilnikov in modulov jedra. Uporaba Rusta za razvoj gonilnikov vam bo omogočila ustvarjanje boljših in varnejših gonilnikov z minimalnim naporom, brez težav, kot so dostop do pomnilniškega območja po njegovem osvoboditvi, razvrščanje ničelnih kazalcev in prelivanja medpomnilnika.

Varnost pomnilnika je v Rustu zagotovljena v času prevajanja s preverjanjem referenc, sledenjem lastništvu objekta in življenjske dobe (obsega) objekta ter z ocenjevanjem pravilnosti dostopa do pomnilnika med izvajanjem kode. Rust zagotavlja tudi zaščito pred celim prelivanjem, zahteva, da se spremenljivke inicializirajo pred uporabo, bolje obravnava napake v standardni knjižnici, privzeto uveljavlja koncept nespremenljivih spremenljivk in referenc ter ponuja močno statično tipkanje za zmanjšanje logičnih napak.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.