From ReactOS Wiki
Jump to: navigation, search

You may use this page to suggest any open source Windows drivers that you think might be useful to ReactOS. Please don't suggest drivers that aren't for Windows, even if you think they would be really good - it takes a large amount of effort to convert drivers to Windows.

Driver Tools

Bo Brantén's Windows Drivers

  • Ntifs.h is a collection of information of interrest to people building file system and file system filter drivers for Windows NT, Windows 2000 and Windows XP. The information has been found in books, magazines, on the Internet and received from contributors.
  • RomFs is an example file system driver for Windows NT/2000/XP. Also included is a file system recognizer for romfs, a file system recognizer is a small driver that loads the real file system driver when it recognizes a file system it can handle on a disk partition or removable media.

EFPL Dependable Systems Lab

I wasn't able to find any code sources for some of these, but perhaps if contacted they could release them.

DDT: Device Driver Tester

DDT is a system for testing closed-source binary device drivers against undesired behaviors, like race conditions, memory errors, resource leaks, etc. DDT combines virtualization with a specialized form of symbolic execution to thoroughly exercise tested drivers; a set of modular dynamic checkers identify bug conditions and produce detailed, executable traces for every path that leads to a failure. These traces can be used to easily reproduce and understand the bugs, thus both proving their existence and helping debug them.

We applied DDT to several closed-source Microsoft-certified Windows device drivers and discovered 14 serious new bugs.

DDT is easy to use, as it requires no access to source code and no assistance from users. We therefore envision DDT being useful not only to developers and testers, but also to consumers who want to avoid running buggy drivers in their OS kernels.

RevEng: Device Driver Reverse Engineering

RevEng automatically reverse engineers a binary driver and synthesizes a new, safe, and portable driver that mimics the original one.

An initial prototype of RevEng (which we call RevNIC) helps automate the production of new drivers for network devices. It takes as input a closed-source binary NIC driver, reverse engineers its logic entirely automatically, and synthesizes new device driver code that implements the exact same hardware protocol as the original driver, but targeted at the OS platform of choice. RevEng does not require access to any vendor documentation or source code.

Most recently, we used RevNIC to reverse engineer several proprietary Windows drivers and port them to four different OSes: Linux, Windows, the µC/OS-II embedded OS, and the bare-bones KitOS. Our measurements indicate that the synthesized drivers deliver performance nearly identical to the original drivers.


Bo Brantén's Windows Drivers

  • SwapFs is a driver for Windows that let you use a Linux swap partition for temporary storage like a RAM-disk. It is possible to put Windows page file on it and it has support for Plug and Play and Power Management so that standby and hibernation works. SwapFs is implemented as a disk filter driver



  • Ext2Fsd by Matt Wu is an ext2 file system driver for Windows NT/2000/XP, licensed under GPL2

There are many other ext2 drivers for Windows, which will be listed here; however, most of them are very outdated, don't work very well or at all, and many are for older versions of Windows




See Also