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
Database Modeling with MicrosoftВ® Visio for Enterprise Architects (The Morgan Kaufmann Series in Data Management Systems)
Introduction
Database Modeling
Getting Started
Reverse Engineering and Importing to ORM
Conceptual Model Reports
CompTIA Project+ Study Guide: Exam PK0-003
Assessment Test
IT Project Management Overview
Project Control
Project Closure
Appendix A Systems Development Life Cycle
A Practitioners Guide to Software Test Design
Section I - Black Box Testing Techniques
Decision Table Testing
Pairwise Testing
Exploratory Testing
Section V - Some Final Thoughts
Cisco Voice Gateways and Gatekeepers
Review Questions
Review Questions
Review Questions
Configuring Gatekeeper Security
Information Dashboard Design: The Effective Visual Communication of Data
Clarifying the Vision
Categorizing Dashboards
Using Poorly Designed Display Media
Arranging the Data Poorly
Characteristics of a Well-Designed Dashboard
AutoCAD 2005 and AutoCAD LT 2005. No Experience Required
Getting to Know AutoCAD
Basic Commands to Get Started
Gaining Drawing Strategies: Part 2
Working with Hatches and Fills
Managing External References
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