微软推进Rust在『Windows』中的应用,内存安全与互操作性成关键优势(rust doc)

9 月 3 日消息,自 2023 年以来,微软就一直在逐步加强 Rust 在 『Windows』 系统中的应用。

目前,『Windows』 内核已能在引入 Rust 代码的情况下启动。此外,微软近期又在推动驱动开发向 Rust 语言过渡。

今年 7 月,微软披露了 Surface 团队在这一方向上的工作进展,推出了开源项目 windows-drivers-rs,旨在为 Rust 驱动开发提供平台支持。在此基础上,微软今日公布了更多细节。

据介绍,为简化 Rust 驱动的开发流程,微软在 windows-drivers-rs 中引入了新的 cargo-wdk crate

这一 Cargo 扩展可自动生成包含预配置链接、构建步骤和依赖项的空白驱动项目,并可调用 WDK 工具(如 InfVerif),类似于在 Visual Studio 中使用 C 语言构建驱动的方式。

Rust 相较于 C 等传统语言,具备内存安全特性,可有效减少与内存相关的安全漏洞;同时,Rust 与 C / C++ 在驱动代码层面具有良好的互操作性,降低了迁移门槛。

微软表示,其长期目标是在 Cargo 环境中为 Rust 开发者提供与 Visual Studio 相同的构建工具和配置选项。中期计划包括自动安装 WDK、支持 NT_TARGET_VERSION、全面支持 ARM64 等。

目前,windows-drivers-rs 已能支持部分类型的驱动开发,但仍需使用较多的 unsafe 代码。

微软指出,『Windows』 Driver Framework (WDF) 团队正与 Rust 专家合作,为内核模式驱动(KMD)和用户模式驱动(UMD)设计更安全的抽象层。对于微软来说,抽象层本质是实现用户模式(最低权限)到内核模式(最高权限)的安全转换机制。同时,微软其他团队也在开发适用于核心内核及第三方驱动的安全结构体和 API,其中部分已随 『Windows』 内核发布。

微软还承诺,会在未来几个月内公布更多驱动开发的最佳实践,其中包括利用 CodeQL进行静态分析。今年 7 月,微软已更新了 『Windows』 11 25H2 版本的第三方驱动静态分析指南,详情可见 此前报道。

特别声明:[微软推进Rust在『Windows』中的应用,内存安全与互操作性成关键优势(rust doc)] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

辰硕流量卡优缺点,辰硕流量卡怎么充值(晨曦流量卡)

特别温馨提醒:在选择流量卡之前,请务必仔细查看套餐的详细说明,尤其是年龄限制、地区覆盖范围等关键条件,避免因不符合要求导致开卡失败,耽误你的使用哦~这点对于打算长期使用的用户来说非常关键,一定要确认辰硕流量…

辰硕流量卡优缺点,辰硕流量卡怎么充值(晨曦流量卡)

电动切断阀,(电动切断阀怎么接线)

在售前阶段,皓珽公司的技术支持团队会与客户紧密沟通,提供定制化选型建议;在售中,技术人员进行现场指导,确保安装调试顺利进行;售后方面,公司提供及时高效的维护服务,解决用户的后顾之忧。总之,电动切断阀作为工业控…

电动切断阀,(电动切断阀怎么接线)

红何首乌及其相关品种解析:定义、功效与应用(何首乌红色)

红何首乌是一种传统中药材,属蓼科植物。本文详细解析了红何首乌及其相关品种(如赤首乌、夜交藤)的基本定义、药用功效、历史渊源以及现代应用场景,为了解这种重要中药材提供了全面的知识框架。

红何首乌及其相关品种解析:定义、功效与应用(何首乌红色)

如何解决建筑工地扬尘难题?安平县硕创电动防尘天幕给出方案(建筑工程遇到的常见困难和解决方法)

安平县硕创建设工程有限公司是一家专业致力于解决建筑工地及工矿企业扬尘污染问题的高科技环保公司。 其电动防尘收缩系统结合工地围挡设计,增设轮滑轨道,实现了防尘网和钢丝绳的共同收缩,既能解决工地扬尘问题,又能化…

如何解决建筑工地扬尘难题?安平县硕创电动防尘天幕给出方案(建筑工程遇到的常见困难和解决方法)

英语中表达面积差异时,为什么会出现单位换算错误?面积单位转换技巧全解!(如何用英语表示面积的大小)

很多人在英语学习中遇到面积差异相关的单位换算难题,导致交流障碍或计算失误。本文详细讲解常用面积单位的换算关系、应用场景以及常见误区,教你轻松掌握面积单位的正确使用方法,帮助你在日常生活、学习和工作中避免不必要的麻烦。淘宝翻译也能助你准确翻译

英语中表达面积差异时,为什么会出现单位换算错误?面积单位转换技巧全解!(如何用英语表示面积的大小)