我们曾报道过微软有意选择Rust 作为C和C++的安全替代方案,Rust是由Mozilla主导的系统编程语言,专注于安全、速度和并发,它最初是Mozilla的一个研究项目,用于更安全、更快速地重写Firefox浏览器。微软表示之所以考虑Rust,除了它能够以内存安全的方式编写系统级程序外,性能、精细的控制以及健康发展的社区都是他们青睐Rust的原因。
如上图所示,微软每年约有70%的漏洞仍然是内存安全问题,如果这些程序用Rust编写,那么这 70%的安全问题很可能就不存在。
微软展示了拥抱Rust的意向,那么另一边的Linux对于Rust又是怎样的想法呢?
开发者就此询问了Linux内核稳定版维护者 Greg Kroah-Hartman,Greg 表示愿意接受用Rust开发Linux内核的驱动程序,但前提是:1)以可选的方式存在,而不是默认启用,这样其他开发者就不需要使用Rust去构建内核;2)Rust驱动需要体现出比C驱动具有优势,比如针对内核API的安全封装器。
不过底下有开发者指出了目前使用Rust实现驱动程序(https://github.com/fishinabarrel/linux-kernel-module-rust)的不便之处:
Linux内核不保证API/ABI的稳定性,因此很难设计通用的Rust接口。至少几乎不可能使它适用于所有版本的Linux。
许多C语言特性没有相应的Rust支持。例如,构造具有位域(bitfield)的结构体似乎是无法实现的。
当然大多数开发者都同意Rust是一门很有前途的用于内核编程的语言,不过这需要大家的努力才能实现。
特别提醒:本网内容转载自其他媒体,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。