Ir publicēta ceturtā ielāpu versija Rust draivera atbalstam operētājsistēmā Linux

Migels Ojeda, Rust-for-Linux projekta autors, Teme nesen nāca klajā ar ceturto priekšlikumu ierīces draivera komponenti Rūsa, kas jāņem vērā Linux kodola izstrādātājiem.

Rūsas atbalsts tiek uzskatīts par eksperimentālu, bet tas jau ir norunāts iekļaut linux-next filiālē un ir pietiekami nobriedis, lai sāktu strādāt ar abstrakcijas slāņiem virs kodola apakšsistēmām, kā arī rakstīt draiverus un moduļus. Izstrādi finansē Google un ISRG (Internet Security Research Group), kas ir projekta Let's Encrypt dibinātājs un veicina HTTPS un tehnoloģiju izstrādi interneta drošības paaugstināšanai.

Tiem, kuri joprojām nav informēti par ierosinātajām izmaiņām, viņiem jāzina, ka tās padara to iespējamu Rust kā otrās valodas izmantošana kontrolieru un moduļu izstrādei no kodola. Rust atbalsts tiek parādīts kā opcija, kas nav iespējota pēc noklusējuma, un tā rezultātā Rust netiek iekļauta starp nepieciešamajām kodola uzbūves atkarībām.

Rust izmantošana draiveru izstrādei ļaus ar minimālu piepūli izveidot labākus un drošākus draiverus, bez problēmām, piemēram, piekļūt atmiņas apgabalam pēc tā atbrīvošanas, nulles rādītāju atsauču atcelšanas un bufera pārpildes.

Atmiņas drošība Rust tiek nodrošināta kompilēšanas laikā, pārbaudot atsauces, izsekojot objektu īpašumtiesības un objekta kalpošanas laiku (tvērumu), kā arī novērtējot atmiņas piekļuves pareizību koda izpildes laikā.

Rust nodrošina arī aizsardzību pret veselu skaitļu pārplūdi, pirms lietošanas ir jāinicializē mainīgie, labāk tiek apstrādātas kļūdas standarta bibliotēkā, pēc noklusējuma tiek ieviesta nemainīgu mainīgo un atsauču koncepcija, kā arī tiek piedāvāta spēcīga statiskā rakstīšana, lai samazinātu loģiskās kļūdas.

Kādas ir izmaiņas ceturtajā daļā?

Šajā jaunajā ielāpu versijā, kas tiek prezentēta, ir minēts, ka komentāri, kas tika izteikti diskusijā par ielāpu pirmo, otro un trešo izdevumu, turpināja novērst.

Mēs turpināsim atjaunināt, līdz nebūsim atkarīgi no nestabilām funkcijām;
kurā brīdī mēs varētu vēlēties sākt deklarēt Rust minimālo versiju
tiek atbalstīts, kā tas tiek darīts, piemēram, GCC un Clang.

Līdzīgi mēs arī migrējām uz Rust valodas 2021. gada izdevumu.

Attiecībā uz citām izmaiņām, kas tika veiktas šajā jaunajā versijā, paziņojumā minēts:

  • Pāreja uz stabilo Rust 1.58.0 izmantošanu kā atsauces kompilatoru.
  • Projektam nepieciešamās izmaiņas, kas vēl nav iekļautas galvenajā Rust rīkkopā, ietver karogu "-Zsymbol-mangling-version=v0" (paredzēts Rust 1.59.0) un režīmu "maybe_uninit_extra" (paredzams Rust 1.60.0) .
  • Ir pievienotas automātiskās Rust rīku pieejamības un to piemērotības pārbaudes, kā arī paplašināta iespēja pārbaudīt Rust atbalstu sistēmā.
  • Tiek piedāvātas jaunas abstrakcijas, lai varētu piekļūt ierīču identifikatoru tabulām ("IdArray" un "IdTable") no Rust koda.
  • Pievienoti slāņi tādu funkciju izsaukšanai, kas ir saistītas ar taimeri (pulksteņa rāmi).
  • Platformas kontrolleri tagad tiek definēti, izmantojot iezīmju ieviešanu.
  • Ir pievienots jauns makro, lai vienkāršotu platformas draiveru reģistrāciju, un ir ierosināta jauna vispārīga draivera veidne.
  • Pievienoti jauni makro "dev_*" struktūrām.
  • Pievienotas jaunas metodes “{read,write}*_relaxed” IoMem tipam .
  • Noņemts FileOpener rekvizīts, lai vienkāršotu failu darbības.
  • Kontroliera reģistrācijas laikā nodoto argumentu skaitam ir pievienots parametrs "ThisModule".
  • Tiek piedāvāta tipiska veidne kodola moduļu izveidei Rust valodā.

Visbeidzot, ja vēlaties uzzināt vairāk par šo jauno versiju, varat uzzināt sīkāku informāciju Šajā saitē.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.