微软使用 Rust 重写 Windows 组件的体验

afterer
 afterer
发布于 2019年11月08日
收藏 13

7 月份,我们报道过“微软正探索将 Rust 作为 C 和 C++ 的安全替代方案”,根据微软的说法,Rust 是一种从根本上考虑安全性的编程语言,他们将尝试使用 Rust 重写各种产品,因为在过去的十年里,该公司 70% 以上的安全补丁都提供了与内存相关的错误,而 Rust 正是解决这个问题的“良药”。

近日,微软透露了使用 Rust 代替 C/C++ 编写 Windows 组件的实验感受。虽然它并没有具体说明哪些产品将用 Rust 重写,但微软表示将随时向用户报告实验进展情况。

微软表示,目前的实验工作情况良好,工程师们描述在使用 Rust 上是“妙不可言”的。尽管有一些功能并没有完成,但会推动项目继续向前发展。

微软 Hyper-V 团队软件工程师 Adam Burch 在博文中说:

我的任务是对 Windows 代码库的一个低级别系统组件进行实验性重写(目前不能透露是哪个组件),虽然这个项目还没有完成,但总的来说,在 Rust 方面的试验体验是非常好(generally positive)。新的组件或现有的具有干净接口的组件移植到 Rust 是很容易的。

虽然,试验 Rust 的过程进展并不顺利,但话说回来如果预想是顺利的,那也显得不现实。Burch 指出安全转换、对 C 的安全支持、准确的分配以及对大规模单元测试的支持,是微软庞大的代码测试基础设施所需要的。Burch 认为,微软将通过努力塑造语言的未来,以提高其在这些情况下的有用性。

Burch 补充说道,Rust 在单片机和诸如内核和虚拟机监控程序等低级系统上有着光明的前景,在这些系统中,一旦成熟,该语言的安全性第一特性将使其具有相当大的吸引力。而目前,在单片机市场上,主要是英特尔在支持和推动,它正在努力使 Rust 达到与 C 相同的功能。

微软如果想使用 Rust 重写一些 Windows 组件,成为第一个这样做的操作系统制作商的话,那么应该要加快速度了,因为 Linux 项目也在考虑在一些内核驱动程序中使用 Rust。

来源:ZDNet

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:微软使用 Rust 重写 Windows 组件的体验
加载中

精彩评论

KangarooDB
KangarooDB
吹吹吹,吹着吹着就有人相信了。
eechen
eechen
搞得好像Rust是微软开发似的,Mozilla什么时候拦着你用Rust了?
海阔天2019
Rust的语法确实很怪异。其实搞一个Cust或者CPPust,不是更好么,还用担心不火?
巴拉迪维
巴拉迪维
Rust 1.39 昨天正式发布了 …
开源中国的CTO
这个人所有的评论基本都是这种格式,真怀疑是机器人

最新评论(59

爱财
爱财
你们以为Rust只是“另一种新语言”? too simple, too naive, Rust是革命性的!会开创一个流派。
https://zhuanlan.zhihu.com/p/90612241
大东家
我只能说微软有意为之,为抵抗GO
银杏林守望者
rust独特的ownership特性导致学习曲线有点。。不那么。。平滑
而ownership又是非常重要的基本概念,所以很多人觉得有点怪异。
江振宇
江振宇
generally positive应翻译成总体上来说还不错吧?
来自山卡拉的你
来自山卡拉的你
使用rust重写了一个小项目,虽然学习曲线有点陡峭,但是总体来说还可以接受,ffi做得不错,无缝调用c库
jonathanL
jonathanL
平时主力开发用C++,开发设备软件的时候用C++心智负担确实比较大,要保证内存不泄露,程序运行至少几个月不崩溃,必须要用智能指针或者Qt之类的程序库解决内存问题,否则出问题原因很难找,多线程也是类似的情况,很不好用。rust解决了这些问题,还是很欢迎的,至少能放心写软件了,不用一遍遍过valgrind和静态检查。主要问题是现在程序库不够丰富,还得混C++解决
看-野生程序猿
看-野生程序猿
微软的visual 系列 和office 系列我很无语 . 动不动就是几个G的安装包 ..
oreak
oreak
千万别用这个语言,直接用c99 和汇编吧, 实在不行c++ 也行
开源中国最帅没有之一
开源中国最帅没有之一
赶紧做了一波更新支持在线Rust编程,https://coderlane.net/sandbox 欢迎体验哈哈
庄生dream
庄生dream
fn main() {
println!("Hello, world!");
}
返回顶部
顶部