Linux Kernel: Rust Support Officially Approved

Rust is becoming equal to assembler and C in programming the Linux kernel – at least officially, as there is still a lot of work to be done in practice.

listen Print view
Linux penguin Tux with Rust logo against an abstract background

(Image: Tux by Larry Ewing/GIMP, Rust)

2 min. read
By
  • Thorsten Leemhuis

Rust is set to shed its "experimental phase" classification in Linux, thereby becoming a fully-fledged language for kernel programming. This was decided yesterday by key Linux developers, including Linus Torvalds, at the annual Kernel Maintainers Summit, as announced via a very brief report on LWN.net.

Practically speaking, Rust is thus rising to become the third most important language in the development of the Linux kernel, alongside assembler and C. However, this by no means implies that programmers can now immediately write any kernel driver in Rust: many subsystems still lack bridging code (bindings). This is required in many places, for example, so that a WLAN driver written in Rust can utilize the base infrastructure for WLAN drivers and PCIe devices written in C.

However, a few subsystems already have such bindings, or developers are already working on them. Among these is the one for kernel graphics drivers, where Nova, a driver written in Rust for modern Nvidia graphics cores, is currently being developed, which will likely be used on many PCs in the medium term.

Videos by heise

The first parts of Rust support were added after extensive preparatory work three years ago in Linux 6.1. Among other things, developers hope that Rust support will reduce the number of security vulnerabilities – thanks to Rust features such as protection against memory access errors, buffer overflows, or problems with concurrent processes. Furthermore, the modern language is also intended to simplify development and make Linux more accessible to younger programmers.

(olb)

Don't miss any news – follow us on Facebook, LinkedIn or Mastodon.

This article was originally published in German. It was translated with technical assistance and editorially reviewed before publication.