Josh Triplett, ki dela pri Intelu in je v odboru za nadzor razvoja Crates.io, govori na vrhu o odprtokodni tehnologiji
V delovni skupini, ki je v nastajanju, bodo Rust razvijalci skupaj z inženirji iz Intela pripravili specifikacije, ki bodo definirale funkcionalnosti, ki jih je treba implementirati v Rust za sistemsko programiranje. Sistemsko programiranje pogosto zahteva nizkonivojsko manipulacijo, kot je izvajanje ukazov privilegiranega procesorja in pridobivanje podrobnih informacij o stanju procesorja. Od podobnih funkcij, ki se že razvijajo za Rust, je omenjena podpora za neimenovane strukture, unije, vstavke zbirnih jezikov (makro »asm!«) in format števila s plavajočo vejico BFLOAT16.
Josh verjame, da prihodnost sistemskega programiranja pripada Rustu, jezik C pa v sodobni realnosti zaseda mesto, ki ga je v preteklih letih zasedal Assembly. Rja
ne le razbremeni razvijalce težav, ki so značilne za jezik C, ki nastanejo zaradi dela s pomnilnikom na nizki ravni, temveč ponuja tudi možnost uporabe pri razvoju sodobnih programskih paradigem.
Med
Josh je prišel na idejo o dodajanju možnosti za razvoj gonilnikov v jedru Linuxa v jeziku Rust, kar bi omogočilo ustvarjanje varnejših in boljših gonilnikov z minimalnim naporom, brez težav, kot je dostop do pomnilnika po sprostitvi, null dereference kazalcev in prekoračitve medpomnilnika.
Greg Kroah-Hartman, ki je odgovoren za vzdrževanje stabilne veje jedra Linuxa, je izrazil pripravljenost, da jedru doda ogrodje za razvoj gonilnikov v jeziku Rust, če ima resnične prednosti pred C-jem, na primer, zagotavlja varno vezave preko Kernel API. Poleg tega Greg obravnava to ogrodje le kot možnost, ki privzeto ni aktivna, da ne bi vključil Rust kot odvisnost gradnje od jedra.
Izkazalo se je, da v tej smeri deluje že več ekip. Na primer, razvijalci iz podjetja "Fish in a Barrel"
Vzporedno
Vse predvidene funkcionalnosti še niso implementirane, vendar je ogrodje že povsem primerno za delo in je bilo uporabljeno za pisanje delujočega gonilnika za krmilnik LAN9512 USB Ethernet, ki je priložen na plošči Raspberry Pi 3. Obstoječi gonilnik smsc95xx, ki ga je napisal v jezik C. Opozoriti je treba, da so velikost modula in stroški komponent izvajalnega okolja pri razvoju gonilnika v Rust nepomembni, kar omogoča uporabo ogrodja za naprave z omejenimi viri.
Vir: opennet.ru