Home

Awesome

windows-kernel-rs

Note: this is still work in progress!

This is a Windows kernel framework in Rust that consists of windows-kernel-sys, a crate that provides low-level unsafe bindings generated using bindgen, and windows-kernel-rs, a crate that provides safe abstractions in Rust on top.

Features

To give you an idea of whether these crates are useful to you, here is a non-exhaustive overview of the features that are currently supported and that are more or less planned:

Articles

Note: this framework may progress faster than I can keep my articles up-to-date. They may currently be due for a bit of a rewrite to reflect some of the changes that made it into this repository since I have written the articles.

In addition, there are articles that cover implementing Windows kernel drivers in Rust from the ground up, including corresponding examples provided as part of this repository:

  1. Prerequisites
  2. Hello World - 02-hello-world
  3. Generating Bindings - 03-generating-bindings
  4. Safe Framework - 04-safe-framework
  5. Creating Devices - 05-creating-devices - user/05-creating-devices
  6. Reading and Writing - 06-reading-and-writing - user/06-reading-and-writing
  7. I/O Controls - 07-io-controls - user/07-io-controls