返回
Rust Meets Linux: Lessons from an Evolving Experiment
DOI:10.1145/3789260.png)
摘要
En 中文
Linux自过去三十年发展而来,已成为现代计算的基础,为从大规模超级计算机到资源受限的嵌入式设备等各种应用提供基础。然而,该基础设施长期受到内存和并发错误困扰,这主要源于C语言中内存操作的自由特性。Rust-for-Linux(RFL)项目通过将Rust的高级特性(如静态所有权和类型检查)集成到内核中,为解决这些长期存在的安全问题提供了有前景的方案。这种集成有望消除内存和并发错误,同时保持性能。尽管RFL已成熟并合并到Linux主线,但其研究仍不充分,其在平衡安全与性能方面的有效性尚待全面评估。本研究首次对RFL进行实证分析,评估其当前状态和优势,重点关注Rust如何与Linux集成,以及这种融合是否能在无显著开销的情况下确保驱动程序安全。我们分析了八个RFL驱动程序,审查了数百个问题和拉取请求、数千个GitHub提交、Linux邮件列表中的邮件交流以及超过12,000条Zulip讨论。我们的发现表明,尽管Rust缓解了内核漏洞,但并未完全消除它们。若管理不当,Rust的安全特性甚至可能引入显著的运行时开销和增加开发复杂度。
Keyword:
Rust
linux
safety
performance
empirical study
期刊
A
IF:
1.8
论文数:
26
被引数:
1.1K

