Programming the Microsoft® Windows® Driver Model, Second Edition
<p>The Microsoft Windows driver model (WDM) supports Plug and Play, provides power management capabilities, and expands on the driver/minidriver approach. Written by long-time device-driver expert Walter Oney in cooperation with the Windows kernel team, this book provides extensive practical examples, illustrations, advice, and line-by-line analysis of code samples to clarify real-world driver-programming issues. And it’s been updated with the latest details about the driver technologies in Windows XP and Windows 2000, plus more information about how to debug drivers.</p> <p>Topics covered include:</p> <ul> <li>Beginning a driver project and the structure of a WDM driver; NEW: Minidrivers and class drivers, driver taxonomy, the WDM development environment and tools, management checklist, driver selection and loading, approved API calls, and driver stacks</li> <li>Basic programming techniques; NEW: Safe string functions, memory limits, the Driver Verifier scheme and tags, the kernel handle flag, and the Windows 98 floating-point problem</li> <li>Synchronization; NEW: Details about the interrupt request level (IRQL) scheme, along with Windows 98 and Windows Me compatibility</li> <li>The I/O request packet (IRP) and I/O control operations; NEW: How to send control operations to other drivers, custom queue implementations, and how to handle and safely cancel IRPs</li> <li>Plug and Play for function drivers; NEW: Controller and multifunction devices, monitoring device removal in user mode, Human Interface Devices (HID), including joysticks and other game controllers, minidrivers for non-HID devices, and feature reports</li> <li>Reading and writing data, power management, and Windows Management Instrumentation (WMI) NEW: System wakeup, the WMI control for idle detection, and using WMIMOFCK</li> <li>Specialized topics and distributing drivers; NEW: USB 2.0, selective suspend, Windows Hardware Quality Lab (WHQL) certification, driver selection and loading, officially approved API calls, and driver stacks</li> </ul> <p>COVERS WINDOWS 98, WINDOWS ME, WINDOWS 2000, AND WINDOWS XP!</p> <p>CD-ROM FEATURES:</p> <ul> <li>A fully searchable electronic copy of the book</li> <li>Sample code in Microsoft Visual C++</li> </ul> <p>For customers who purchase an ebook version of this title, instructions for downloading the CD files can be found in the ebook.</p>