Deseta različica popravkov jedra Linux s podporo za jezik Rust

Miguel Ojeda, avtor projekta Rust-for-Linux, predlagano za obravnavo razvijalcem jedra Linux Izdaja v10 komponent za razvoj gonilnikov naprav Rust. To je enajsta izdaja popravkov, če upoštevamo prvo različico, objavljeno brez številke različice. Vključitev podpore za Rust v jedro je odobril Linus Torvalds. Linux 6.1, razen če se pojavijo nepredvidene težave. Razvoj financirata Google in ISRG (Internet Security Research Group), ustanovitelj projekta Let's Encrypt, ki spodbuja HTTPS in razvoj tehnologij za izboljšanje internetne varnosti.

Tako kot prejšnji popravek je bila tudi izdaja v10 okrnjena na najnujnejše, kar zadostuje za izgradnjo preprostega jedrnega modula, napisanega v Rustu. Razlike v primerjavi s prejšnjo različico so manjše spremembe, zamenjava sizeof z ARRAY_SIZE v datoteki kallsyms.c in prilagoditev popravkov jedru v6.0-rc7. Pričakuje se, da bo minimalni popravek, katerega velikost je bila zmanjšana s 40 na 13 vrstic kode, poenostavil uvedbo podpore za Rust v glavno jedro. Po zagotovitvi minimalne podpore je načrtovano postopno širjenje obstoječe funkcionalnosti z migracijo drugih sprememb iz veje Rust za podružnico.Linux.

Predlagane spremembe omogočajo uporabo Rusta kot drugega jezika za razvoj gonilnikov in modulov jedra. Podpora za Rust je predstavljena kot možnost, ki ni privzeto omogočena in ne povzroči vključitve Rusta med zahtevane odvisnosti gradnje za jedro. Uporaba Rusta za razvoj gonilnikov vam bo omogočila ustvarjanje varnejših in boljših gonilnikov z minimalnim naporom, brez težav, kot je dostop do območja pomnilnika, potem ko je ta osvobojen, dereferenciranje ničelnih kazalcev in prekoračitev medpomnilnika.

Varno ravnanje s pomnilnikom je v Rustu zagotovljeno v času prevajanja s preverjanjem sklicevanj, spremljanjem lastništva objekta in življenjske dobe (obsega) objekta ter z vrednotenjem pravilnosti dostopa do pomnilnika med izvajanjem kode. Rust zagotavlja tudi zaščito pred celoštevilskimi prelivi, zahteva obvezno inicializacijo vrednosti spremenljivk pred uporabo, bolje obravnava napake v standardni knjižnici, privzeto uporablja koncept nespremenljivih referenc in spremenljivk, ponuja močno statično tipkanje za zmanjšanje logičnih napak.

Vir: opennet.ru

Kupite zanesljivo gostovanje za strani z DDoS zaščito, VPS VDS strežniki 🔥 Kupite zanesljivo spletno gostovanje z zaščito DDoS, VPS VDS strežniki | ProHoster