出品 | OSC开源社区(ID:oschina2013)

Windows 11 上周发布了新的测试版 (Insider Preview Build 25905)。

发布公告 提到此版本已经使用 Rust 重写 Windows 11 内核中的部分函数。

打开网易新闻 查看精彩图片

据介绍,该预览版使用 safe Rust 对关键内核功能进行了早期实现。

具体来说,win32kbase_rs.sys 包含 Windows GDI region 的新实现。虽然这是一个小的实验性功能,微软工程师表示,与用 C/C++ 编写的传统程序相比,Rust 在可靠性和安全性方面具有优势,他们将继续增加 Rust 在内核中的使用

今年 3 月份,Windows 操作系统安全总监 David “dwizzle” Weston 在以色列特拉维夫的 BlueHat IL 2023 上宣布 Rust 进入操作系统内核 ——,并表示在接下来的几周或几个月内,大家将会在内核中使用 Rust 启动 Windows,该项工作的基本目标是将其中一些内部的 C++ 数据类型替换成 Rust。

打开网易新闻 查看精彩图片

Rust 是一种高性能、内存安全语言,而软件项目的大部分漏洞都属于内存安全 bug。自 2004 年以来,微软安全响应中心(MSRC)对所有报告过的微软安全漏洞进行了分类。根据他们提供的数据,所有微软年度补丁中约有 70% 是针对内存安全漏洞的修复程序

事实上,早在几年前微软就表现出了对 Rust 的兴趣,他们认为该语言是一种在代码到达用户手中之前捕获和消除内存安全漏洞的方法。

现如今,随着谷歌等竞争对手都在大力拥抱 Rust,微软对 Rust 的探索也变得更加热情。去年 9 月,微软 Azure 首席技术官 Mark Russinovich 还曾在社交平台上发布动态呼吁,开发人员应该更多地使用 Rust 而不是 C/C++ 来启动新项目

另一方面,虽然用 Rust 重写 Windows 不会很快发生,但微软对 Rust 的支持无疑让开源社区受益。开源软件开发者、现任 Sentry 安全工程师 Armin Ronacher 认为,微软对 Rust 的投入对这门语言来说非常重要。

“具体来说,我希望微软重用现有的编译器,我希望这会带来更好的 PDB [程序数据库] 支持。在现如今的 Windows 上,开发人员工具支持要落后于你在基于 DWARF 的 [使用属性记录格式进行调试] 平台上获得的支持。”

更多内容请查看:《》

相关链接:https://blogs.windows.com/windows-insider/2023/07/12/announcing-windows-11-insider-preview-build-25905/