Queues and Other Support Objects


After the driver creates and initializes the device object, the driver creates additional objects that are associated with the device object. These additional objects provide services that the driver uses to control the device and handle I/O requests. Along with the device objects, they form the working structure of the driver.

Table 6-3 lists the additional objects that drivers most commonly create. Each of the objects in the table is typically a descendant of a device object.

Table 6-3: Common Objects
Open table as spreadsheet

Object

Description

Supporting framework

I/O queue object

Manages the flow of I/O requests to the driver.

UMDF and KMDF

See Chapter 8, "I/O Flow and Dispatching"

I/O target object

Represents a target for I/O requests.

UMDF and KMDF

See Chapter 9, "I/O Targets"

USB device, interface, and pipe objects

Represent a USB device and describe a USB configuration and the endpoints in a configuration.

UMDF and KMDF

See Chapter 9, "I/O Targets"

Interrupt object

Represents an interrupt vector or interrupt message.

KMDF

See Chapter 16, "Hardware Resources and Interrupts"

Lock object

Provides serialization for shared resources.

KMDF

See Chapter 10, "Synchronization"

WMI provider and instance objects

Provide WMI features so that the driver can export information to other components.

KMDF

See Chapter 12, "WDF Support Objects"

DMA enabler, transaction, and common buffer objects

Enable the use of the framework's DMA support and describe a DMA transaction and buffer.

KMDF

See Chapter 17, "Direct Memory Access"

This chapter indicates where your driver should create and initialize these objects, but does not provide detailed explanations of what they do and how they work.




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)

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net