Kod för att utveckla drivrutiner pÄ Rust-sprÄket har lagts till i Linux-next-kÀrnans gren.

I Linux-next-grenen, som kommer att ligga till grund för utgivningen av kÀrnan Linux 5.13, har ett inledande set av komponenter för enhetens drivrutinsutveckling pÄ Rust-sprÄket inkluderats. Dokumentationen för anvÀndning av Rust i Linux-kÀrnan samt ett exempel pÄ en kÀrnmodul med en drivrutin för teckenenheter pÄ Rust-sprÄket har publicerats separat. Koden lades till av Stephen Rothwell, underhÄllare av Linux-next-grenen. Vanligtvis inkluderar Linux-next-koden som Àr redo att accepteras i nÀsta cykel för Àndringar i kÀrnan, men det Àr Ànnu oklart om Linus Torvalds kommer att acceptera stöd för Rust i Linux 5.13, eftersom koden inte har granskats av en bredare krets av utvecklare.

Stöd för utveckling av kÀrndrivrutiner pÄ Rust-sprÄket diskuterades aktivt förra Äret, ocksÄ med deltagande av Linus Torvalds, som inte uteslöt en sÄdan möjlighet. Idén stöddes ocksÄ av Greg Kroah-Hartman, som ansvarar för att stödja den stabila kÀrngrenen av Linux. Att anvÀnda Rust för drivrutinsutveckling möjliggör att skapa sÀkrare och mer högkvalitativa drivrutiner med minimala insatser, fria frÄn problem som att referera till minnesomrÄden efter att de har frigjorts, avreferensiering av nullpekare och buffertöverskridanden.

För att aktivera stöd för Rust i Linux-next-grenen har alternativet CONFIG_RUST («Rust support» i menyn «General setup») lagts till i KConfig, som vid aktivering kontrollerar om rustc-kompilatorn finns i systemet och, om den Àr nÀrvarande, ger möjlighet att aktivera andra komponenter kopplade till Rust (till exempel visas avsnittet «Rust hacking» i menyn «Kernel hacking»). AnvÀndningen av Rust ses som ett val, som inte Àr aktiverat som standard och som inte leder till att Rust blir en obligatorisk byggberoende för kÀrnan.

Konstruktionen av kÀrnkomponenter i Rust kan göras bÄde med GCC och med Clang. För att anvÀnda Rust i kÀrnan krÀvs installation av de senaste nattbyggena av kompilatorn rustc, inte Àldre Àn versionen nightly-2021-02-20 (man lovar att stöd för stabila versioner av Rust kommer att lÀggas till, men för nÀrvarande finns det en koppling till vissa experimentella funktioner). Dessutom mÄste standardbiblioteken för Rust som levereras i paketet rust-src och bindgen-generatorn finnas i systemet. Stödet Àr för nÀrvarande begrÀnsat till plattformarna x86_64 och ARM64.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster