Mogućnost integracije Rust podrške u Linux 5.20 kernel nije isključena

Na konferenciji Open-Source Summit 2022 u toku ovih dana, u odjeljku FAQ, Linus Torvalds je spomenuo mogućnost rane integracije u Linux kernelu komponenti za razvoj Drajveri uređaja u Rust.

Tako je spomenuto da se zakrpe koje omogućavaju Rust mogu prihvatiti u sljedećem dnevniku promjena koji čini kompoziciju kernela 5.20, koji je zakazan za kraj septembra.

Podsjetimo da je Rust od prošle godine postao jedan od favorita za uključivanje u razne važne projekte i da je u proteklom vremenu već rađeno oko implementacije Rust podrške.

U okviru renomiranih projekata koji se od prošle godine interesuju za rust, možemo izdvojiti, na primjer, Android, jer je bio zainteresovan za rđa jer dozvoljava postići performanse bliske C i C++ jezicima, omogućavajući da se koristi za razvoj dijelova platforme na niskom nivou i komponenata za povezivanje sa hardverom.

Da bi osigurao sigurnost C i C ++ koda, Android koristi izolaciju pješčanika, statičku analizu i fuzzing testove. Mogućnosti izolacije pješčanika su ograničene i dostigle su ograničenje svojih mogućnosti (daljnja fragmentacija procesa nije praktična sa stanovišta potrošnje resursa).

Među ograničenjima korištenja pješčanika, oni spominju velike troškove i veću potrošnju memorije uzrokovane potrebom za generiranjem novih procesa, kao i dodatnu latenciju povezanu s upotrebom IPC-a.

Rust-Android
Vezani članak:
Rust je već omiljen za Android razvoj

S druge strane, to ne smijemo zaboraviti Linus Torvalds također je dao svoje mišljenje o Rustu iu kojem proveo pregled implementacije zakrpa mogućnosti postavljanja pokretačkih programa Rust u Linux jezgri i izrazio neke kritike.

Najveće žalbe izazvao je potencijal za bijeg "Panika zbog neuspjeha tokom izvođenja" u pogrešnim situacijama, na primjer, u situaciji kada nema memorije, kada operacije dinamičke dodjele memorije, uključujući one jezgre, mogu propasti.

torvalds izjavio da je takav fokus na jezgru u osnovi neprihvatljiv, A ako ne razumijete ovu poantu, možete u potpunosti odbiti bilo koji kod koji pokušava koristiti takav pristup. S druge strane, programer zakrpe složio se s problemom i smatrao ga je rješivim.

Linus Torvalds
Vezani članak:
Rust nije bio izuzet od kritika Linusa Torvaldsa

Ali prošlo je nekoliko mjeseci otkako je Linus dao povratnu informaciju i naporan rad je učinjen na poboljšanju implementacije. kao takav, zahtjev za povlačenje za jezgro trenutno još nije dostavljen Torvaldsu, ali set zakrpa je dalje revidiran, ključne napomene uklonjene, testiran na linux-next grani neko vrijeme i doveden u stanje pogodno za izgradnju slojeva apstrakcije na vrhu podsistema kernela, pisanje drajvera i modula.

Podrška za hrđu dolazi kao opcija što nije omogućeno prema zadanim postavkama i ne dovodi do toga da Rust bude uključen među potrebne ovisnosti izgradnje za kernel.

Predložene promjene omogućavaju korištenje Rusta kao drugog jezika za razvoj drajvera i modula kernela. Korištenje Rusta za razvoj drajvera omogućit će vam da kreirate bolje i sigurnije drajvere uz minimalan napor, bez problema kao što je pristup memorijskom području nakon što ga oslobodite, dereferenciranje nultih pokazivača i prelivanje bafera.

Sigurnost memorije je osigurana u Rustu u vrijeme kompajliranja provjerom referenci, praćenjem vlasništva nad objektom i životnog vijeka objekta (opsega), kao i procjenom ispravnosti pristupa memoriji tokom izvršavanja koda. Rust takođe pruža zaštitu od prelivanja celog broja, zahtijeva da se varijable inicijaliziraju prije upotrebe, bolje rukuje greškama u standardnoj biblioteci, primjenjuje koncept nepromjenjivih varijabli i referenci prema zadanim postavkama i nudi snažno statičko kucanje kako bi se minimizirale logičke greške.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.