List of Tables

Chapter 1: Introduction to WDF

Table 1-1: Documentation Conventions

Chapter 5: WDF Object Model

Table 5-1: UMDF Framework Objects and Interfaces
Table 5-2: UMDF Driver Callback Objects and Interfaces
Table 5-3: KMDF Object Types
Table 5-4: KMDF Object Attributes
Table 5-5: Which Framework Objects a Driver Can Delete

Chapter 6: Driver Structure and Initialization

Table 6-1: IDriverEntry Interface
Table 6-2: Device Properties
Table 6-3: Common Objects
Table 6-4: IWDFDeviceInitialize Methods
Table 6-5: PDO-Specific Callbacks

Chapter 7: Plug and Play and Power Management

Table 7-1: Plug and Play and Power Callbacks for WDF Drivers
Table 7-2: Additional KMDF Plug and Play Callbacks
Table 7-3: IPnpCallbackHardware Methods
Table 7-4: IPnpCallback Methods
Table 7-5: KMDF Device Idle Settings
Table 7-6: Device Sx Wake Settings

Chapter 8: I/O Flow and Dispatching

Table 8-1: Types of IRPs that WDF Supports
Table 8-2: IWDFIoRequest Methods for Memory Objects
Table 8-3: WdfRequestRetrieveXxx Methods
Table 8-4: I/O Request Delivery Mechanism
Table 8-5: I/O Queue Callbacks
Table 8-6: I/O Event Callbacks for Queue State Changes
Table 8-7: Queue Control Methods
Table 8-8: Retrieval Methods for Manual I/O Queues
Table 8-9: Handling Create Requests in a UMDF Driver
Table 8-10: Handling Create Requests in a KMDF Driver
Table 8-11: Handling Cleanup and Close Requests
Table 8-12: Callbacks for Read and Write Requests
Table 8-13: Callbacks for Device I/O Control Requests
Table 8-14: I/O Request Completion Methods
Table 8-15: Framework Handling of Request Cancellation
Table 8-16: Self-managed I/O Methods

Chapter 9: I/O Targets

Table 9-1: Fields in the WDF_IO_TARGET_OPEN_PARAMS Structure
Table 9-2: I/O Target States
Table 9-3: Methods to Manage I/O Target State
Table 9-4: I/O Target Event Callbacks
Table 9-5: Buffer Lifetimes
Table 9-6: Effect of I/O Target State on I/O Request
Table 9-7: Interfaces and Methods to Support USB
Table 9-8: Initialization Functions for WDF_USB_DEVICE_SELECT_CONFIG_PARAMS Structure
Table 9-9: Methods for Sending a Request to a USB I/O Target
Table 9-10: Methods for Sending a Request to a USB Target Pipe

Chapter 10: Synchronization

Table 10-1: UMDF Callbacks Serialized Using Device Scope
Table 10-2: Summary of KMDF Callback Serialization
Table 10-3: Summary of Synchronization Techniques

Chapter 11: Driver Tracing and Diagnosability

Table 11-1: RUN_WPP Options for Drivers

Chapter 12: WDF Support Objects

Table 12-1: IWDFMemory Methods
Table 12-2: KMDF Memory Object Methods
Table 12-3: IWDFNamedPropertyStore Methods
Table 12-4: KMDF Methods to Query and Open Registry Keys
Table 12-5: KMDF Registry Key Methods
Table 12-6: Collection Object Methods
Table 12-7: Timer Object Methods
Table 12-8: KMDF Time Conversion Functions

Chapter 14: Beyond the Frameworks

Table 14-1: Access to WDM Objects

Chapter 15: Scheduling, Thread Context, and IRQL

Table 15-1: Interrupt Request Levels for Processor Types

Chapter 16: Hardware Resources and Interrupts

Table 16-1: Resource Types and Corresponding Union Members in Resource Descriptor

Chapter 17: Direct Memory Access

Table 17-1: DMA-Specific Device Information
Table 17-2: KMDF DMA Profiles and Their Meanings
Table 17-3: KMDF Debugger Extensions for DMA Verification

Chapter 20: How to Install WDF Drivers

Table 20-1: Contents of the UMDF Co-installer
Table 20-2: Contents of the KMDF Co-installer
Table 20-3: [DDInstall.Wdf] Directives for UMDF Drivers
Table 20-4: [Umdf-install] Directives

Chapter 21: Tools for Testing WDF Drivers

Table 21-1: Power Management Scenarios Tested by PwrTest
Table 21-2: Driver Verifier Options
Table 21-3: Driver Verifier /flags Parameter Options
Table 21-4: Errors Detected by UMDF Verifier

Chapter 22: How to Debug WDF Drivers

Table 22-1: Common Debug Commands
Table 22-2: Common UMDF Debugger Extensions
Table 22-3: Common KMDF Debugger Extensions
Table 22-4: KMDF Debugging Registry Values

Chapter 23: PREfast for Drivers

Table 23-1: General-Purpose Annotations
Table 23-2: Annotations for Buffers
Table 23-3: Driver Annotations
Table 23-4: Basic Driver Annotations
Table 23-5: Nonmemory Resources Annotations
Table 23-6: IRQL Annotations

Chapter 24: Static Driver Verifier

Table 24-1: Precondition Rules for PowerPolicyOwner Rules
Table 24-2: Callback Function Role Types that Allow Multiple Callbacks

Developing Drivers with the Microsoft Windows Driver Foundation
Developing Drivers with the Windows Driver Foundation (Pro Developer)
ISBN: 0735623740
EAN: 2147483647
Year: 2007
Pages: 224

Similar book on Amazon
Windows Internals, Part 1: Covering Windows Server 2008 R2 and Windows 7
Windows Internals, Part 1: Covering Windows Server 2008 R2 and Windows 7
Windowsu00ae Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition (Pro Developer)
Windowsu00ae Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition (Pro Developer)
Advanced Windows Debugging
Advanced Windows Debugging
The Windows 2000 Device Driver Book: A Guide for Programmers (2nd Edition)
The Windows 2000 Device Driver Book: A Guide for Programmers (2nd Edition) © 2008-2017.
If you may any questions please contact us: