微软开源 windows-drivers-rs,用 Rust 开发 Windows 驱动程序

|----------------------------------------------------------------------------------------------------------|
| Microsoft Azure 首席技术官兼著名 Windows 软件开发人员 Mark Russinovich 在社交平台上宣布,启动了一个名为 windows-drivers-rs 的新开源项目。 |

该项目可帮助开发人员使用 Rust 开发 Windows 驱动程序,旨在支持 WDM (Windows Driver Model) 和 WDF (Windows Driver Framework) 驱动程序开发模型。

当前版本的资源库主要由 Rust crates 组成,具体包括:

  • wdk-build:用于配置 Cargo 构建脚本以进行 WDK 的绑定生成和下游链接的库。虽然此 crate 的编写目的是灵活地适应不同的 WDK 版本和不同的 WDF 版本,但目前仅针对 NI eWDK、KMDF 1.33、UMDF 2.33 和 WDM 驱动程序进行了测试。旧版 DDK 可能缺少链接器选项。
  • wdk-sys:直接 FFI 绑定到 WDK 中可用的 API。这包括从 bindgen 中自动生成的 ffi 绑定,以及包括手动重新实现 bindgen 无法生成的宏。
  • wdk:与 WDK 中可用的 API 的安全惯用绑定
  • wdk-panic:使用 WDK 构建的程序的默认 panic 处理程序实现
  • wdk-alloc:对使用 WDK 编译的二进制文件的分配支持
  • wdk-macros:宏的集合,有助于更轻松地与 wdk-sys 的直接绑定进行交互。该 crate 通过 wdk-sys 重新导出,并且通常情况下 crates 不需要直接依赖 wdk-macros

具体示例可查看 Windows-rust-driver-samples。

值得注意的是,该项目仍处于早期阶段,不建议用于商业用途;但微软方面鼓励社区对该项目的实验、建议和讨论。在 windows-drivers-rs 的开发过程中,该公司将把 GitHub 讨论区作为与社区互动的主要形式。目前,windows-drivers-rs 项目已得到了微软开发人员 Melvin Wang 的支持。

相关推荐
小迅先生34 分钟前
AI开发 | Web API框架选型-FastAPI
开发语言·python·fastapi
五花肉村长38 分钟前
Linux-读者写著问题和读写锁
linux·运维·服务器·开发语言·数据库·visualstudio
biubiubiu070640 分钟前
windows中JDK切换版本
java·开发语言
ALex_zry2 小时前
Go核心特性与并发编程
开发语言·后端·golang
yuanpan2 小时前
CMake创建C++项目与npm创建nodejs项目异曲同工
开发语言·c++·npm
南瓜胖胖2 小时前
R语言科研编程-柱状图
开发语言·r语言
FAQEW3 小时前
介绍一下什么是反射(面试题详细讲解)
java·开发语言·反射
永远向阳而生3 小时前
【C++】vector容器实现
开发语言·c++
jian110584 小时前
java项目实战、pom.xml配置解释、pojo 普通java对象
java·开发语言·python
油头少年_w4 小时前
Python 爬虫之requests 模块的应用
开发语言·爬虫·python