Flylib.com
List of Figures
Previous page
Table of content
Next page
Chapter 1: Introduction to WDF
Figure 1-1: Simplified drawing of the USB learning device
Chapter 2: Windows Driver Fundamentals
Figure 2-1: Windows core operating system architecture
Figure 2-2: The device stack
Figure 2-3: Sample Plug and Play device tree
Figure 2-4: How a device stack handles IRPs
Chapter 4: Overview of the Driver Frameworks
Figure 4-1: Conceptual view of the WDF model
Figure 4-2: UMDF driver and infrastructure
Figure 4-3: KMDF driver and infrastructure
Chapter 5: WDF Object Model
Figure 5-1: Driver and device callback objects in the Fx2_Driver sample
Figure 5-2: Sample object tree
Figure 5-3: Parent-child relationships among UMDF objects
Figure 5-4: Parent-child relationships among the KMDF objects
Chapter 6: Driver Structure and Initialization
Figure 6-1: Flow of control for a UMDF driver
Figure 6-2: Flow of control for a KMDF driver
Chapter 7: Plug and Play and Power Management
Figure 7-1: Steps in framework startup and shutdown sequences
Figure 7-2: Device enumeration and startup sequence for a UMDF driver
Figure 7-3: Device enumeration and startup sequence for KMDF FDO or filter DO
Figure 7-4: Device addition/startup sequence for PDO
Figure 7-5: Device power-down and orderly removal sequence for a UMDF driver
Figure 7-6: Device power-down and orderly removal sequence for KMDF FDO and filter DO
Figure 7-7: Device power-down and orderly removal sequence for PDO
Figure 7-8: Surprise-removal sequence for a UMDF driver
Figure 7-9: Surprise-removal sequence for a KMDF driver
Chapter 8: I/O Flow and Dispatching
Figure 8-1: Overview of I/O request path from application to device
Figure 8-2: I/O request path through the UMDF device stack
Figure 8-3: I/O request path through a KMDF driver
Figure 8-4: The WDF request processing pipeline
Figure 8-5: Flow of I/O requests through the framework
Chapter 9: I/O Targets
Figure 9-1: UMDF I/O dispatchers
Figure 9-2: WDF I/O request object, WDF memory object, and buffer
Figure 9-3: USB abstraction
Figure 9-4: USB configuration
Chapter 10: Synchronization
Figure 10-1: Threads without locks on a multiprocessor system
Figure 10-2: Threads without locks on a single-processor system
Figure 10-3: Threads with a lock on any system
Figure 10-4: Device synchronization scope
Figure 10-5: Queue synchronization scope for a KMDF driver
Chapter 11: Driver Tracing and Diagnosability
Figure 11-1: Software tracing architecture
Figure 11-2: Viewing a trace log file by using TraceView
Figure 11-3: A real-time TraceView session for Osrusbfx2
Chapter 15: Scheduling, Thread Context, and IRQL
Figure 15-1: Thread interruption on a single-processor system
Figure 15-2: Thread interruption on a multiprocessor system
Chapter 17: Direct Memory Access
Figure 17-1: Conceptually connecting device and memory bus by using map registers
Figure 17-2: How a fragmented buffer is translated by using map registers
Figure 17-3: DMA implementation in KMDF drivers
Chapter 18: An Introduction to COM
Figure 18-1: Schematic drawing of a UMDF driver DLL
Figure 18-2: A typical COM object
Figure 18-3: VTable
Figure 18-4: HRESULT layout
Chapter 22: How to Debug WDF Drivers
Figure 22-1: The WinDbg UI
Figure 22-2: Task Manager displaying WUDFHost processes
Figure 22-3: WinDbg Locals window for CMyDevice--CreateInstance
Figure 22-4: Output from the !dumpdevstacks debugger extension
Figure 22-5: Output from the !wdfrequest debugger extension for Fx2_Driver
Figure 22-6: Output of the !wdfdevice debugger extension for Osrusbfx2
Figure 22-7: Output from the !wdfrequest debugger extension for Osrusbfx2
Figure 22-8: Viewing trace messages with WinDbg
Figure 22-9: KMDF log for Osrusbfx2
Chapter 23: PRE
f
ast for Drivers
Figure 23-1: PRE
f
ast Message List screen
Figure 23-2: PRE
f
ast View Annotated Source screen
Figure 23-3: PRE
f
ast Message List screen in filter view
Figure 23-4: Example 1-Uninitialized variables and NULL pointers
Figure 23-5: Example 2-Implicit order of evaluation
Figure 23-6: Example 3-Calling a function at incorrect IRQL
Figure 23-7: Example 4-Valid error reported in the wrong place
Figure 23-8: Example 5-Function type class mismatch
Figure 23-9: Example 6-Incorrect enumerated type
Chapter 24: Static Driver Verifier
Figure 24-1: Results pane in an SDV report
Figure 24-2: Icons used in SDV results
Figure 24-3: A rule violation in SDV Defect Viewer
Previous page
Table of content
Next page
Developing Drivers with the Windows Driver Foundation (Pro Developer)
ISBN: 0735623740
EAN: 2147483647
Year: 2007
Pages: 224
Authors:
Penny Orwick
,
Guy Smith
BUY ON AMAZON
Building Web Applications with UML (2nd Edition)
Custom JavaScript Objects
Client-Side Risks
Discussion
Iteration
Requirements and Use Case Model
Excel Scientific and Engineering Cookbook (Cookbooks (OReilly))
Defining Variables
Using Arrays
Exploring VBAs Built-in Functions
Removing Weird Characters from Imported Text
Computing Summary Statistics
Postfix: The Definitive Guide
Administration
Rewriting Addresses
Queue Management
Local Delivery
The Nature of Spam
Mastering Delphi 7
Core Library Classes
The Architecture of Delphi Applications
Reporting with Rave
Internet Programming: Sockets and Indy
Appendix B Extra Delphi Tools from Other Sources
GDI+ Programming with C#
GDI+ Namespaces and Classes in .NET
The Coordinate System
Working with Brushes and Pens
Matrix Operations in Image Processing
Printing Text
Understanding Digital Signal Processing (2nd Edition)
DFT RESOLUTION, ZERO PADDING, AND FREQUENCY-DOMAIN SAMPLING
THE DFT FREQUENCY RESPONSE TO A REAL COSINE INPUT
A COMPLEX DOWN-CONVERSION EXAMPLE
FLOATING-POINT BINARY FORMATS
Section D.1. STATISTICAL MEASURES
flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net
Privacy policy
This website uses cookies. Click
here
to find out more.
Accept cookies