Getting Started with Driver Development

Are you starting with drivers after first learning application development? Have you developed drivers for other operating systems, but never for Windows? Are you interested in the Windows Driver Foundation? Here you’ll find information, tools, and resources to get you started.

driver writing != bus driving
Ilias Tsigkogiannis' Introduction to Windows Device Drivers

Code Quality: Windows vs Linux vs FreeBSD vs Solaris
Sat, 17 May 2008 03:06:00 GMT

When Is WDF 1.7 RTM Coming Out?
Fri, 04 Apr 2008 02:12:00 GMT

Why Do We Need WDF Coinstallers?
Mon, 10 Mar 2008 23:27:00 GMT

Getting Started with Driver Fundamentals
White PaperWindows Roadmap for Drivers
Choose the right driver model for your device class.
Microsoft.comBook reviews for beginning driver developers
Microsoft.comRussinovich, Mark E., and Solomon, David A. Microsoft Windows Internals, Fourth Edition.
Build a solid understanding of Windows architecture, drivers, and kernel-mode development.
Microsoft.comVideos for beginning driver developers

Getting Started with WDF Drivers
White PaperArchitecture of Microsoft’s Windows Driver Foundation
Get a basic introduction to the new driver model for creating object-oriented, event-driven drivers.
White PaperArchitecture of the Kernel-Mode Driver Framework
Learn the basic components and structure of a KMDF driver.
White PaperArchitecture of the User-Mode Driver Framework
Learn how to use UMDF to create user-mode drivers for protocol-based or serial-bus-based devices.
White PaperSample Drivers for the Kernel Mode Driver Framework
Study several KMDF samples in detail.
White PaperSample Drivers for the User-Mode Driver Framework
Study several UMDF samples in detail.
OtherDeveloping Drivers with Windows Driver Foundation by Orwick and Smith
Comprehensive Guide from Microsoft Press

Getting Started with Other Types of Drivers
White PaperToaster Sample Drivers in the Driver Development Kit
Study the Toaster sample to understand the basic concepts and technical issues involved in writing a WDM kernel-mode device driver.
Microsoft.comGetting Started with Windows Drivers in the WDK
Follow the introductory steps for design, development, test, and installation of Windows drivers.
Microsoft.comOney, Walter. Programming the Microsoft Windows Driver Model, Second Edition.
Learn how to implement drivers based on the Windows Driver Model (WDM).

Building, Testing, and Debugging Drivers
White PaperGetting Started with the Windows Driver Development Environment
Check this overview of tools for driver development from a Windows driver professional.
White PaperIntroduction to How to Build, Install, Test, and Debug KMDF Drivers
Follow this step-by-step guide to help you understand and prepare to use the build environment and tools for KMDF driver development.

Kits and Tools
White PaperAbout the Windows Driver Kit (WDK)
Learn about the WDK, which provides the build environment, tools, samples, and documentation that are required for driver development.
White PaperDebugging Tools and Symbols: Getting Started
Learn how to set up and use the Microsoft tools for debugging device drivers.
White PaperTesting Tools: Getting Started
Install and use sophisticated tools to help find bugs and tune drivers.
WHDC Portal/NodalWindows Hardware Platform Preview Labs
Preview self-paced labs for tools and technologies for developing Windows drivers and hardware support.

Resources
White PaperWDK Documentation Download
WHDC Portal/NodalDriver Developer Community Resources
WHDC Portal/NodalDriver Signing Requirements for Windows
WHDC Portal/NodalDriver Tips: Best Practices for Windows Device Drivers
WHDC Portal/NodalNotes from Windows Development Teams
WHDC Portal/NodalSupport for Developer Kits and Tools
OtherDriver Developer Blogs
Microsoft.comWDK Online