Linux could include a driver framework in Rust

RustLinux

Greg Kroah-Hartman, one of the Linux kernel keepers recently received a proposal in which it says that it is possible that a framework dedicated to the development of drivers in Rust language will be accepted in the core.

Although at the moment there is nothing concrete, for this, Greg Kroah-Hartman formulates two conditions: One of them is that the framework will not be activated by default in the case of its integration, this, to avoid that one does not need Rust to compile the kernel; second, that the proposed approach has real advantages compared to those derived from the use of the C language.

It is known that Linux Kernel is the product of developments in C languages ​​and above all that for Linus Torvalds C is first of all. So in the development of the drivers for the system, the use of C.

Developers Compromised Huge Opportunities which offers in terms of managing the hardware resources of a computer system the use of Rust.

And is that more and more voices are raised to call the passage to the Rust language, one of which is supposed to replace C for material control.

And it is that in the last Linux Security Summit, security researchers, along with others, have pointed to one of the biggest language deficiencies C are the problems related to memory management - buffer overflows, allocations, access to invalid or freed memory areas, etc.

According to the figures reported by the duo of researchers, the result of 65% of the Linux kernel vulnerabilities identified in the last 6 months. The Common Vulnerabilities and Exposure (CVE) figures are similar: 15.9% of the 2288 vulnerabilities that affected the Linux Kernel in 20 years are related to buffer overflows.

The research team didn't just talk about the benefits Rust offers compared to C. He also took the opportunity to present an initiative to develop a framework dedicated to Linux driver development.

Simply put, the effort is to work with the Linux kernel APIs. The developments are for x86, arm / arm64, mips, POWERPC, RISC-V, s390 and SPARC architectures.

However the biggest problem is that only Linus Torvalds believes that there is nothing better than the C language for system programming.

I must say that I am quite old-fashioned on issues like this. The reason I started Linux and operating systems in general is that I really like the hardware. I like to explore the material aspect.

I am not saying this to emphasize that I am an expert. What I mean is that I like to interact with the hardware from the software. Seen from this point of view, I have not yet seen a programming language that only comes close to the C language.

This statement is not just because C is useful for generating good code to handle hardware. Also, using C makes sense to people who think like a computer. I think the reason is that the people who designed the C language did so at a time when compilers had to be simple; at a time when language had to adapt to the expected output or result.

So when I read the code in C language, I know what the assembly code will look like and that's what interests me, "he said 7 years ago during one of his speeches at the conference. Intel Open Source Technology Center.

Previously, you have dropped similar proposals to introduce C ++ in the circle of languages ​​dedicated to the development of drivers for Linux. In particular, it highlighted the possibility of making object orientation cleaner with C than with C ++.

The Alex Gaynor and Geoffrey Thomas initiative continues to be a great project on many axes. For example, the research team emphasizes the need to continue the development of drivers for file systems and for specific device types.

Then we will have to see if content can convincera the maintainers of Linux.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.