It is an entirely different discipline from traditional Application Programming. Device Drivers are Operating System Extensions. In order to extend the OS effectively, a developer needs to understand many of the details of the operating system's architecture and its working. In addition it is necessary to learn the device driver development environment and kernel mode debugging. Windows Driver Model (WDM) is an enhanced form of the NT 4 kernel-mode device driver model. The main structural changes are the addition of Plug and Play (PnP), Power management, Windows Management Instrumentation (WMI) and Device Interface support. These features are included in these course notes, along with details of the necessary development environment. These course notes imparts the knowledge and practice necessary to begin writing WDM device drivers for Windows XP and Windows 2000. Using these course notes you would be able to develop an immediately useful knowledge of how to write a device drivers that would interface hardware to the Operating System and to Application Programs.
CD Contents: All the programs developed in this book as well as answers to the Labs at the end of each chapter are furnished on the CD in the source code form. For each chapter there is a separate folder on the CD.
Table of Contents
Chapter 1: Introduction to Device Drivers
Chapter 2: Kernel Mode Programming
Chapter 3: the Windows Driver Model
Chapter 4: Communication Between Application and Driver
Chapter 5: Hardware Basics
Chapter 6: Building Real World Drivers
Chapter 7: Bus Architectures
Chapter 8: USB Drivers
Chapter 9: Drivers Installation
Chapter 10:Driver Testing and Debugging