PÄ den pÄgÄende konferensen Open-Source Summit 2022 nÀmnde Linus Torvalds i frÄgesessionen möjligheten till en snabb integrering av komponenter för utveckling av enhetsdrivrutiner pÄ sprÄket Rust i Linux-kÀrnan. Det Àr inte uteslutet att patchar med stöd för Rust kommer att godkÀnnas i det kommande fönstret för förÀndringar, som formar innehÄllet i version 5.20 av kÀrnan, planerad till slutet av september.
FörfrÄgan om att inkludera Àndringar i kÀrnan har Ànnu inte skickats till Torvalds, men uppsÀttningen av patchar har genomgÄtt ytterligare granskning, blivit av med de huvudsakliga anmÀrkningarna, testas redan ganska lÀnge i linux-next-grenen och har nÄtt en status som Àr lÀmplig för att skapa abstraktionslager över kÀrnans subsystem, skriva drivrutiner och moduler. Stöd för Rust presenteras som ett alternativ, som inte Àr aktivt som standard och inte leder till att Rust blir ett obligatoriskt byggberoende för kÀrnan.
De föreslagna Àndringarna möjliggör anvÀndning av Rust som ett andra sprÄk för utveckling av kÀrndrivrutiner och moduler. AnvÀndningen av Rust för drivrutinsutveckling kommer att möjliggöra skapandet av sÀkra och högkvalitativa drivrutiner med minimala anstrÀngningar, fria frÄn problem som att referera till omrÄde i minnet efter att det har frigjorts, avreferensiering av nullpekare och att gÄ utanför bufferten.
SÀker minneshantering sÀkerstÀlls i Rust vid kompilering genom kontroll av referenser, spÄrning av Àgande av objekt och beaktande av objektens livstid (synlighet), samt genom utvÀrdering av korrekt tillgÄng till minnet under kodens körning. Rust tillhandahÄller ocksÄ verktyg för skydd mot heltalsöverflöden, krÀver obligatorisk initialisering av variabelvÀrden innan anvÀndning, hanterar fel bÀttre i standardbiblioteket, tillÀmpar konceptet av oförÀnderliga (immutable) referenser och variabler som standard och erbjuder stark statisk typning för att minimera logiska fel.
KĂ€lla: opennet.ru
