Development

Software-ontwikkeling
Linus Torvalds

Linux-kernel flirt met Rust en Linus Torvalds kijkt toe

Rust kan veelgemaakte fouten in kernel voorkomen.

Linus Torvalds © TED
24 maart 2021

Rust kan veelgemaakte fouten in kernel voorkomen.

Het gebruik van de programmeertaal Rust krijgt langzamerhand voet aan de grond in de kerncode van Linux, waardoor de kans op fouten afneemt.

Veel van de kwetsbaarheden in de Linux-kerncode komen voor uit problemen met de beveiliging van het geheugen. Door Rust te gebruiken kunnen die problemen worden voorkomen, omdat de interpreter van de programmeertaal automatisch een check uitvoert op veelvoorkomende fouten en daarop zelfs blokkeert. Het is niet de bedoeling om de hele Linux-kernel te herschrijven in Rust, stelt Linux-ontwikkelaar Nelson Elhage. Maar het idee is waar mogelijk Rust te gebruiken om nieuwe code te schrijven, voegt hij toe. Ook tijdens de 2020 Linux Plumbers Conference kreeg het idee de nodige aandacht.(pdf)

Linux en de programmeertaal C zijn tot nog toe onlosmakelijk verbonden. De voorstellen om over te stappen op een andere taal zijn dan ook opmerkelijk. Geestelijk vader van Linux - Linus Torvalds - weet dan ook nog niet zo goed wat hij er van moet vinden, blijkt uit een vraaggesprek met ZDNet.

Hij zegt geïnteresseerd te zijn in het project, maar ziet wel dat het vooral gedreven wordt door mensen die heel enthousiast zijn over Rust. "Ik sta open om de beloofde voordelen te overwegen en sommige valkuilen te vermijden, maar ik weet ook dat beloftes soms niet uitkomen." Torvalds wil dus eerst zien hoe het in praktijk uitwerkt en zegt de ontwikkeling op geen enkele manier te stimuleren.

Begin bij drivers

Er zijn wel een aantal zorgen, met name over de werking van bestaande API's in de kernel, de architectuur en de compatibiliteit tussen Rust en C met betrekking tot de Application Binary Interface (ABI). De verwachting is dat Rust het eerst een plek gaat krijgen bij het creëren van nieuwe drivers omdat die aan het eind van de keten zitten. Drivers zijn afhankelijk van de core maar de core is nooit afhankelijk van de drivers.

Lees meer over
Lees meer over Development OP AG Intelligence
1
Reacties
JGM van der Zanden 24 maart 2021 13:51

Als Rust ook een striktere type checking kent dan C, dan zal het zeker een mega-grote verbetering zijn!

Reactie toevoegen
De inhoud van dit veld is privé en zal niet openbaar worden gemaakt.