Toinen versio Rust-ohjaintuen Linux-korjaustiedostoista on jo lähetetty

Tämän vuoden maaliskuussa linux-seuraavalla haaralla jossa se toimi tuolloin Linux-ytimen 5.13 kanssa, Alkuperäinen komponenttisarja sisällytettiin laiteohjainten kehittämiseen vuonna kieli Rust ja nyt on pyydetty sisällyttämään toinen painos korjaustiedostoja Rust-tuen lisäämiseksi Linux-ytimeen.

Henkilö, joka on lähettänyt pyynnön Linux-kehittäjille, on Miguel Ojeda, Rust-for-Linux-projektin kirjoittaja ja josta puhuimme myös muutama päivä sitten, koska hänet palkattiin vastaamaan "Prossimo" -projektista, joka keskittyy periaatteessa toimien koordinointiin kriittisen ohjelmistoinfrastruktuurin siirtämiseksi suojattuun koodiin Linux-ytimen muistin suojaamiseksi Rustilla (jos haluat tietää enemmän projektista, voit kysyä lähettämällä alla olevaan linkkiin.)

Rust ajurit Linuxissa
Aiheeseen liittyvä artikkeli:
Prossimo, ISRG-projekti Linux-ytimen muistin suojaamiseksi Rustin avulla

Miguel Ojedan lähettämä pyyntö on toinen päivitetty versio komponenttien kehityksestä laiteajureiden kehittämiseksi Rust-kielellä ja joista korjausten ensimmäisen version keskustelun aikana tehdyt kommentit poistetaan ja joihin Linus Torvalds jo liittyi keskusteluun ja ehdotti logiikan muuttamista joidenkin bittisten operaatioiden käsittelemiseksi.

Sisällä edut jotka mainitaan ovat turvallinen muistinhallinta on taattu Rustissa käännösaikana tarkistamalla viitteet, seuraamalla objektin omistajuutta ja objektin käyttöikää sekä arvioimalla muistin käytön oikeellisuutta ajon aikana.

Rust tarjoaa myös kokonaisluvun ylivuotosuojaus, vaatii muuttujien arvojen pakollisen alustamisen ennen käyttöä, käsittelee paremmin standardikirjaston virheet, hyväksyy oletuksena viitteiden ja muuttumattomien muuttujien käsitteen ja tarjoaa vahvan staattisen kirjoituksen loogisten virheiden minimoimiseksi.

Erottuvista muutoksista tästä uudesta korjaustiedostojen versiosta mainitaan:

  • Muistin allokointikoodi estää paniikin syntymisen, kun ilmenee virheitä, kuten muistin loppuminen.
  • Sisältyy variantti Rust-allokakirjastosta, jossa koodi on muokattu lukkojen käsittelemiseksi, mutta lopullisena tavoitteena on tuoda kaikki tarvittavat ytimen ominaisuudet allokoinnin pääversioon (muutokset on jo valmistettu ja siirretty vakiomuotoiseen Rust-kirjastoon).
  • Yöversioiden sijaan voidaan nyt käyttää beeta- ja vakaita versioita rustc-kääntäjä kääntämään Rust-yhteensopivan ytimen. Tällä hetkellä rustc 1.54-beta1: tä käytetään viitekääntäjänä, mutta kuukauden lopun 1.54-julkaisun jälkeen sitä tuetaan viitekääntäjänä.
  • Lisätty tuki testien kirjoittamiseen käyttäen standardia Rust-määritettä "# [test]" ja kykyä käyttää doctestejä dokumentaation mallikoodin käyttämiseen testeinä.
  • ARM32- ja RISCV-arkkitehtuurien tuki lisättiin aiemmin tuettujen x86_64 ja ARM64 -rakenteiden lisäksi.
    Parannetut GCC-toteutukset Rust (GCC: n Rustin käyttöliittymä) ja rustc_codegen_gcc (GCC: n Rustc-taustakuva), joka nyt läpäisee kaikki vertailuarvot.
  • A uusi abstraktiotaso Rust-ohjelmat käyttävät C-muodossa kirjoitettuja ytimen mekanismeja, kuten puita, viitteiden laskemisobjekteja, tiedostokuvaajien, tehtävien, tiedostojen ja I / O-vektorien luomista.
  • Ohjainkehityskomponenteilla on parannettu tuki "tiedosto_operaatiot" -moduulille, "moduuli!" -Makrolle, makrokirjaukselle ja alkeellisille ohjaimille (koe ja poista).
  • Binder tukee tiedostokuvaajien ja LSM-linkkien välittämistä.
  • Toiminnallisempi esimerkki ruosteajurista, bcm2835-rng, ehdotetaan laitteiston satunnaislukugeneraattorille Raspberry Pi -levyille.

Lopuksi, jos haluat tietää enemmän siitä, voit tutustua yksityiskohtiin Seuraavassa linkissä.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.