Programming the Microsoft® Windows® Driver Model (Developer Reference)

4.07 avg rating
( 14 ratings by Goodreads )
 
9780735618039: Programming the Microsoft® Windows® Driver Model (Developer Reference)
View all copies of this ISBN edition:
 
 

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.

Topics covered include:

  • 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
  • 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
  • Synchronization; NEW: Details about the interrupt request level (IRQL) scheme, along with Windows 98 and Windows Me compatibility
  • 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
  • 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
  • Reading and writing data, power management, and Windows Management Instrumentation (WMI) NEW: System wakeup, the WMI control for idle detection, and using WMIMOFCK
  • 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

COVERS WINDOWS 98, WINDOWS ME, WINDOWS 2000, AND WINDOWS XP!

CD-ROM FEATURES:

  • A fully searchable electronic copy of the book
  • Sample code in Microsoft Visual C++®

A Note Regarding the CD or DVD

The print version of this book ships with a CD or DVD. For those customers purchasing one of the digital formats in which this book is available, we are pleased to offer the CD/DVD content as a free download via O'Reilly Media's Digital Distribution services. To download this content, please visit O'Reilly's web site, search for the title of this book to find its catalog page, and click on the link below the cover image (Examples, Companion Content, or Practice Files). Note that while we provide as much of the media content as we are able via free download, we are sometimes limited by licensing restrictions. Please direct any questions or concerns to booktech@oreilly.com.

"synopsis" may belong to another edition of this title.

Review:

Written for advanced C/C++ programmers, Walter Oney's Programming the Microsoft Windows Driver Model is a technically astute and clearly presented guide to writing custom Windows 2000 device drivers.

The author's command of the details of the new Windows Driver Model (WDM) standard is what makes this book such a clear success. (Because the WDM is rich in kernel and system services, the trick is often knowing how to use what's available rather than doing everything yourself.) The author presents a solid overview of the WDM architecture and breaks down the process of writing custom device drivers into manageable pieces, from the basics of loading device drivers to creating and processing I/O request packets. The book is very good at exposing kernel system calls, design principles, and programming techniques (such as managing synchronization and handling errors). There are also "nerd alerts" that point out extremely technical material.

This book shows you what you'll need to create WDM drivers that cooperate fully with Windows 2000 (and Windows 98). Features like Plug and Play (PnP), Windows power management, and the new Windows Management Instrumentation (WDM) standard get full attention here. There is plenty of sample code (plus a custom Visual C++ AppWizard that generates skeleton code for a default WDM driver) to get you started. Examples for working with the S5933 PCI chip set (and other simple hardware) let you see WDM drivers in action.

The process of writing device drivers certainly has changed from the early days of DOS. But armed with this handy and thorough book, C/C++ programmers can successfully create drivers for custom hardware that take full advantage of all the features of the powerful new WDM standard. --Richard Dragan

Topics covered: Windows Driver Model (WDM) overview and driver structure; kernel mode; physical filter, function and bus drivers; loading device drivers (DDs); driver objects; Windows 98 compatibility; kernel mode programming basics; error handling; memory management; synchronization; interrupt request levels, kernel synchronization objects, I/O request packets (IRPs), completion routines, plug and play (PnP) basics, reading and writing data, direct memory access (DMA) transfers, power management, error logging, watchdog timers, Windows Management Instrumentation (WMI), Universal Serial Bus (USB): bulk transfer and isochronous pipes; installing DDs: INF files, property pages, and Registry keys.

About the Author:

Walter Oney has 35 years of experience in systems-level programming and has been teaching Windows device driver classes for 10 years. He was a contributing editor to Microsoft Systems Journal and is a Microsoft MVP. He has written several books, including Systems Programming for Windows 95 and the first edition of Programming the Microsoft Windows Driver Model. In his free time he's a committed jogger, a fan of classical dance, and an amateur oboist. He and his wife, Marty, live in Boston, Massachusetts.

"About this title" may belong to another edition of this title.

Buy New View Book
List Price: US$ 59.99
US$ 144.76

Convert Currency

Shipping: US$ 4.99
Within U.S.A.

Destination, Rates & Speeds

Add to Basket

Top Search Results from the AbeBooks Marketplace

1.

Walter Oney
Published by Microsoft Press (2002)
ISBN 10: 0735618038 ISBN 13: 9780735618039
New Paperback Quantity Available: 1
Seller:
Ergodebooks
(RICHMOND, TX, U.S.A.)
Rating
[?]

Book Description Microsoft Press, 2002. Paperback. Condition: New. 2nd. Seller Inventory # DADAX0735618038

More Information About This Seller | Contact this Seller

Buy New
US$ 144.76
Convert Currency

Add to Basket

Shipping: US$ 4.99
Within U.S.A.
Destination, Rates & Speeds

2.

Oney, Walter
Published by Microsoft Press (2002)
ISBN 10: 0735618038 ISBN 13: 9780735618039
New Paperback Quantity Available: 2
Seller:
Murray Media
(North Miami Beach, FL, U.S.A.)
Rating
[?]

Book Description Microsoft Press, 2002. Paperback. Condition: New. Never used!. Seller Inventory # P110735618038

More Information About This Seller | Contact this Seller

Buy New
US$ 160.55
Convert Currency

Add to Basket

Shipping: US$ 1.99
Within U.S.A.
Destination, Rates & Speeds

3.

Oney, Walter
Published by Microsoft Press (2002)
ISBN 10: 0735618038 ISBN 13: 9780735618039
New Paperback Quantity Available: 2
Seller:
Save With Sam
(North Miami, FL, U.S.A.)
Rating
[?]

Book Description Microsoft Press, 2002. Paperback. Condition: New. Brand New!. Seller Inventory # VIB0735618038

More Information About This Seller | Contact this Seller

Buy New
US$ 160.55
Convert Currency

Add to Basket

Shipping: US$ 3.00
Within U.S.A.
Destination, Rates & Speeds