article وصول مفتوح

Rust Meets Linux: Lessons from an Evolving Experiment

  • ACM Transactions on Computer Systems
  • Association for Computing Machinery
Research footprint

At a glance

الاستشهادات
0
المراجع
7
Comments
0
Paper overview

Abstract

Linux, developed over the past three decades, has become the cornerstone of modern computing, serving as the foundation for a wide array of applications ranging from large-scale supercomputers to resource-constrained embedded devices. However, this infrastructure has long been plagued by memory and concurrency bugs, primarily due to the permissive nature of memory operations in the C language. The Rust-for-Linux ( RFL ) project offers a promising solution to address these long-standing safety concerns by integrating Rust’s advanced features, such as static ownership and type-checking, into the kernel. This integration could potentially eliminate memory and concurrency bugs while maintaining performance. Although RFL has matured and been merged into the Linux mainline, it remains understudied, and its effectiveness in balancing safety and performance is yet to be fully assessed. In this study, we present the first empirical analysis of RFL to evaluate its current state and benefits, focusing on how Rust integrates with Linux and whether this fusion ensures driver safety without significant overhead. We analyze eight RFL drivers, examining hundreds of issues and pull requests, thousands of GitHub commits, mail exchanges from the Linux mailing list, and over 12,000 discussions on Zulip. Our findings indicate that while Rust mitigates kernel vulnerabilities, it does not completely eliminate them. If not properly managed, Rust’s safety features even introduce notable runtime overhead and increased development complexity.

Record transparency

Publication details

DOI
10.1145/3789260
OpenAlex
W7125579551
Document type
article
Language
EN
Source
ACM Transactions on Computer Systems
Last metadata update
المجتمع

Comments

تسجيل الدخول للانضمام إلى النقاش.

  1. لا توجد تعليقات بعد. ابدأ النقاش.