Developing Windows NT Device Drivers
A programmer's handbook
Edward N. Dekker, Joseph M. Newcomer
Résumé
This book is designed for anyone involved in the development of Windows NT Device Drivers, particularly those working on drivers for nonstandard devices that Microsoft has not specifically supported. Because Windows NT does not permit an application program to directly manipulate hardware, a customized kernel mode device driver must be created for these nonstandard devices. And since experience has clearly shown that superficial knowledge can be hazardous when developing device drivers, the authors have taken care to explore each relevant topic in depth.
This book's coverage focuses on drivers for polled, programmed I/O, interrupt-driven, and DMA devices. The authors discuss the components of a kernel mode device driver for Windows NT, including background on the two primary bus interfaces used in today's computers: the ISA and PCI buses. Developers will learn the mechanics of compilation and linking, how the drivers register themselves with the system, experience-based techniques for debugging, and how to build robust, portable, multithread- and multiprocessor-safe device drivers that work as intended and won't crash the system. The authors also show how to call the Windows NT kernel for the many services required to support a device driver and demonstrate some specialized techniques, such as mapping device memory or kernel memory into user space. Thus developers will not only learn the specific mechanics of high-quality device driver development for Windows NT, but will gain a deeper understanding of the foundations of device driver design.
 Table of contents :
 List of Figures ..... xxv
 List of Tables ..... xxxi
 Code Listings ..... xxxv
 Preface ..... xxxix
 Chapter 1: Driver Overview ..... 1
 Chapter 2: I/O: User Level Overview ..... 31
 Chapter 3: Planning a Device Driver ..... 45
 Chapter 4: I/O Hardware: Internal Busses ..... 71
 Chapter 5: Device Driver Basics ..... 95
 Chapter 6: Overview of Kernel Memory: Caching, Paging and
Pipelining ..... 107
 Chapter 7: Driver Data Structures ..... 129
 Chapter 8: Device Driver Structure ..... 151
 Chapter 9: Debugging a Device Driver ..... 169
 Chapter 10: Approaching Reality: Moving Data .....
221
 Chapter 11: Approaching Reality: Synchronization .....
247
 Chapter 12: Achieving Reality: Memory Management .....
265
 Chapter 13: Achieving Reality: Touching the Hardware .....
279
 Chapter 14: Achieving Reality: Interrupts and the Driver
..... 291
 Chapter 15: Achieving Reality: Timers ..... 311
 Chapter 16: Achieving Reality: Driver Initialization .....
325
 Chapter 17: Achieving Reality: Direct Memory Access .....
337
 Chapter 18: Achieving Reality: The Rest of the Details
..... 353
 Chapter 19: Mapping Kernel and Device Memory to User Space
..... 363
 Chapter 20: I/O Hardware: The ISA Bus ..... 383
 Chapter 21: I/O Hardware: The PCI Bus ..... 395
 Chapter 22: Serialization within the Driver ..... 433
 Chapter 23: Layered Drivers ..... 461
 Chapter 24: Driver Threads ..... 491
 Chapter 25: Specialized Drivers in NT: An Overview .....
525
 Chapter 26: Useful Driver Techniques ..... 553
 Chapter 27: A Hardware Simulator ..... 605
 Chapter 28: Windows 2000 Preview ..... 635
 Chapter 29: I/O Hardware: The Universal Serial Bus .....
683
 Chapter 30: The Win32 Driver Model ..... 739
 Appendix A: Reference ..... 779
 Appendix B: Error Codes and NTSTATUS Codes ..... 1001
 Appendix C: BugCheck Codes ..... 1107
 Index ..... 1119
Caractéristiques techniques
| PAPIER | |
| Éditeur(s) | Addison Wesley | 
| Auteur(s) | Edward N. Dekker, Joseph M. Newcomer | 
| Parution | 19/04/1999 | 
| Nb. de pages | 1104 | 
| EAN13 | 9780201695908 | 
| ISBN13 | 978-0-201-69590-8 | 
Avantages Eyrolles.com
Consultez aussi
- Les meilleures ventes en Graphisme & Photo
 - Les meilleures ventes en Informatique
 - Les meilleures ventes en Construction
 - Les meilleures ventes en Entreprise & Droit
 - Les meilleures ventes en Sciences
 - Les meilleures ventes en Littérature
 - Les meilleures ventes en Arts & Loisirs
 - Les meilleures ventes en Vie pratique
 - Les meilleures ventes en Voyage et Tourisme
 - Les meilleures ventes en BD et Jeunesse
 
- Informatique Systèmes d'exploitation Windows Windows NT / 2000
 - Informatique Bureautique Systèmes d'exploitation Windows Windows 8 et 8.1
 - Informatique Développement d'applications Programmation Windows COM/DCOM, COM+, ATL, et Windows DNA
 - Informatique Développement d'applications Programmation Windows Programmation Windows 2000/NT
 - Informatique Développement d'applications Langages JavaScript - Vbscript
 - Informatique Développement d'applications Langages Visual Basic