Skip to content
Paperback Programming the Microsoft Windows Driver Model [With CD-ROM] Book

ISBN: 0735605882

ISBN13: 9780735605886

Programming the Microsoft Windows Driver Model [With CD-ROM]

Select Format

Select Condition ThriftBooks Help Icon

Recommended

Format: Paperback

Condition: Very Good

$44.79
Save $5.20!
List Price $49.99
Almost Gone, Only 1 Left!

Book Overview

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... This description may be from another edition of this product.

Customer Reviews

4 ratings

A Must Have

I've been working on Linux kernel driver for sometime and recently started porting my driver to Windows platform, which is totally new to me. I started by going through DDK online manual for over a month, during which I spent a ton of energy trying to find the Windows counterparts of the functions I'm using in Linux driver. Then I came across this book, which is saving me a lot. That's right, this book is no newbie one, but it is definitley well-written, organized, and neat if compared to "Linux Device Driver 3rd", if you happen to have one. Strongly recommend this book if you are a serious DDK writter. And BTW, use this book with DDK online manual intensively. Expecting the 3rd edition!

Success Story

This book was a valuable resource for my successful driver development project.For newbie's, the book is a great companion to the DDK. The text provides simple and concise sample code. The examples on the CD-ROM are a great way to start exploring driver programming concepts using a kernel debugger. The DDK samples are far too complicated for understanding the fundamentals, so use the book to get started and then the DDK samples will be much easier to comprehend.I recommend that you read through the entire book at a high enough level that you don't get caught up in the details. Next, find the chapter and sample driver that is most appropriate for your task and get started. Throughout the rest of development, you'll reference various parts of the book to understand the details and avoid the hidden pitfalls in kernel mode programming.For experts, the book provides comprehensive treatment of the topic. It's full of tips and suggestions based on real-world experience. Many of the driver components on the CD-ROM can be integrated into real drivers in order to reduce development time and complexity. If you are creating a production driver that you intend to ship to real customers, the book will also provide you many options for creating a top-notch user experience during the install process. WHQL and driver security issues are addressed as well.The author updates the CD-ROM sources in service packs located on the web site. These updates are based on his continuing work and feedback from readers.

Look No Further

If your developing device drivers in 2000/2001 for a Windows operating system then this book is simply a must have. I purchased Chris Cant's book first because I had the misimpression that Oney's book was written a year earlier than it was and didn't really address Win2K as well as it does. I couldn't have been more wrong. Just flipping though the pages alone, it seems bigger and more authoritative. Code snips are kept quite small and the numerous diagrams and tables mean you don't have to keep refering back to the DDK as much or seaching for the right header file to find the definition of a perticular structure.You might also want to consider investing in some colored tabs at your local office supply store because you well spend a lot of time flipping between sections.If you can only get one book, get this one, or at least get this one first. But quite honestly you really need both books because each has it's strengths and it really helps to have the same thing explained in different ways and words. Plus you can never have too much sample code.

If you're serious about WDM, you need this book!

Walter Oney is an expert who doesn't talk down to you. There's a lot of gold in this well-written book, but to extract it happily you'll need a strong background in Windows programming, including first and foremost a couple of years of professional driver-writing experience for Win9X/NT platforms; in a few places, some knowledge of COM and MFC will also be helpful. Plug and Play, power management, and USB issues are covered in detail, as well as driver basics (from an advanced perspective), the intricacies of cancelling IRPs, etc.I like Oney's approach to teaching -- he concentrates on the logic of the few dozen basic steps needed to write a driver, leaving it to the samples on the accompanying CD to flesh out the skeleton. This has the advantage of highlighting the mechanics, and the often convoluted reasoning behind them, without sacrificing completeness. He identifies and analyzes many potential race conditions and other pitfalls that you might not think of on your own. One of the best things about the book is the tips and sidebars. Some examples: why you should use the PAGED_CODE macro and Driver Verifier when using Soft-Ice/W on Win2k; the hazards of using DDK "function calls" that are actually macros; how to ship a single binary for both Win2000 and Win98, given that Win98 doesn't support some key functions (such as those involving IO_REMOVE_LOCK) -- the book suggests writing a VDD with stubs for the missing functions, as explained in Appendix A. The sample code also contains very instructive workarounds for the shortcomings of Win98. Another strong point is the DEVQUEUE code that Oney has developed to extend the standard Windows driver model to handle PlugandPlay. In addition to including the code on the CD, he gives a detailed and highly instructive discussion in the text. DEVQUEUE is a useful tool that can be taken over as-is in your own projects.Once you've finished this book, you'll be writing much more solid code and have enough technique to pick and choose among methods of your choice, rather than feeling cornered and boxed-in. Oney maintains a web site with errata and updates for the book and code samples (for instance, the stub VDD is now replaced by a filter driver to avoid the need to reboot).
Copyright © 2023 Thriftbooks.com Terms of Use | Privacy Policy | Do Not Sell/Share My Personal Information | Cookie Policy | Cookie Preferences | Accessibility Statement
ThriftBooks® and the ThriftBooks® logo are registered trademarks of Thrift Books Global, LLC
GoDaddy Verified and Secured