Linuxi tuuma viies plaastrite vÀljaanne, mis toetab Rusti keelt

Miguel Ojeda, Rust-for-Linux projekti autor, on esitanud Linuxi tuumaarendajatele viie komponendi versiooni seadmejuhtmete arendamiseks Rusti keeles. Rusti tugi kĂ€sitletakse eksperimenteerna, kuid see on juba lisatud linux-next harusse ja on piisavalt arenenud, et alustada töötamist tuuma allĂŒksuste abstraktsioonikihtide loomisega ning samuti juhtmete ja moodulite kirjutamisega. Arengut rahastavad Google ja organisatsioon ISRG (Internet Security Research Group), kes on Let’s Encrypti projekti asutaja ja edendab HTTPS-i ning arendab tehnoloogiaid, et suurendada interneti turvalisust.

Tuletame meelde, et ettepanekud muudatused vĂ”imaldavad kasutada Rusti teise keele kui draiverite ja tuuma moodulite arendamiseks. Rusti toetus on esitatud valikuna, mis pole vaikimisi aktiveeritud ja ei too kaasa Rusti lisamist tuuma kohustuslikesse koostamise sĂ”ltuvustesse. Rusti kasutamine draiverite arendamiseks vĂ”imaldab minimaalse vaevaga luua turvalisi ja kvaliteetseid draivereid, vabanedes sellistest probleemidest nagu mĂ€luprobleemide juurde pÀÀsemine pĂ€rast nende vabastamist, nullviidete de-referentsimine ja mĂ€lupuhvri piiride ĂŒletamine.

Rust tagab mĂ€luga ohutu töö kompileerimise ajal viidete kontrollimise, objektide omandi jĂ€lgimise ja objektide eluea (nĂ€htavuse) arvestamise kaudu ning hindab koodi kĂ€ivitamise ajal mĂ€lule juurdepÀÀsu Ă”igust. Rust pakub ka vahendeid tĂ€isarvude ĂŒletĂ€itumise kaitsmiseks, nĂ”uab muutuja vÀÀrtuste kohustuslikku algvÀÀrtustamist enne kasutamist, kĂ€sitleb vigu paremini standardraamatukogus, rakendab muutujaid ja viiteid vaikimisi muutumatuks (immutable) ning pakub tugevat staatilist tĂŒĂŒbi mÀÀramist loogiliste vigade vĂ€hendamiseks.

Uues patƥide versioonis jÀtkatakse mÀrkuste kÔrvaldamist, mis on vÀljendatud esimese, teise, kolmanda ja neljanda patƥi arutelu kÀigus. Uues versioonis:

  • Intel toetatud 0DAY/LKP pideva integratsiooni sĂŒsteemi on lisatud Rusti toe kontroll, ning on alustatud testimise aruannete avaldamist. Rusti toe integreerimine KernelCI automatiseeritud testimise sĂŒsteemi on valmimisel. GitHub CI pĂ”hine testimine on ĂŒle viidud konteinerite kasutamisele.
  • Rustis kirjutatud tuumamoodulitel ei ole enam vajalik defineerida crate-aatribute «#![no_std]» ja «#![feature(
)]».
  • Lisatud on toimetamise sihtrĂŒhmad (.o, .s, .ll ja .i).
  • Koodi vormindamise soovitustes on mÀÀratletud reeglid kommentaaride («//») ja koodi dokumenteerimise («///») eraldamiseks.
  • Is_rust_module.sh skript on ĂŒmber kirjutatud.
  • Lisatud on staatiliste (globaalsete jagatud muutujate) sĂŒnkroniseerimise primitiivide tugi, mis pĂ”hineb «CONFIG_CONSTRUCTORS» teostusel.
  • Lukustamise haldamine on lihtsustatud: Guard ja GuardMut on ĂŒhendatud ĂŒhe parametreeritud tĂŒĂŒbiks.
  • Seadmete registreerimise tĂ€iendavate parameetrite mÀÀramine on saanud vĂ”imaluse.
  • Lisatud on «RwSemaphore» abstraktsioon, mis toimib C-struktuuri rw_semaphore ĂŒmber.
  • Mmapi kasutamiseks on lisatud uus moodul mm ja abstraktsioon VMA (ĂŒmberstruktureeritud vm_area_struct).
  • GPIO PL061 juhtmejuhiks on vahetatud makro «dev_*!» kasutamiseks.
  • Koodi on ĂŒldiselt puhastatud.

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster