Index


A

abstraction phase, SLAM engine, 830

access, synchronized. See synchronization

access rights, I/O target objects, 315

AcquireLock method (IWDFObject), 386

Active Template Library (ATL), 595

adaptive time-outs (UMDF), 297

/adddriver parameter (Driver Verifier), 681

AddRef method (IUnknown), 113, 589, 590–591, 600, 609–610

addressing capability (DMA devices), 554, 555

aliasing memory, annotations for, 791–792

alignment requirement (device property), 145, 554

/all parameter (Driver Verifier), 680

allocating memory, 44, 442–447. See also memory

annotations for, 790–791, 798–799

tagged memory allocation, 44

analysis mode (PREfast), 734

!analyze debugger extension, 715

annotation modifiers, 764–765

annotations in source code

best practices, 816–818

driver annotations, 774–778

eliminating coding noise with, 751–752

general-purpose, 760–774

how to use, 752–760

Osrusbfx2 sample driver (example), 818–822

for SDV (Static Driver Verifier), 832–834

APC_LEVEL IRQLs, 511, 513, 514

APCs (asynchronous procedure calls), 514

Application Verifier, 693–694

applications

I/O. See Windows I/O model

in WDF architecture, 74

in Windows system architecture, 26

AppVerif.exe, 693–694

arbitrary thread context, 39–40, 47, 510–511

ASSERT macro, 749

Assign functions, 96, 104

AssignContext method (IObjectCleanup), 124, 454

AssignDeviceInterfaceState method, 152

assumptions, making explicit, 749

asynchronous I/O, 27, 31–32, 339–340. See also synchronization

asynchronous procedure calls (APCs), 514

ATL (Active Template Library), 595

attributes, object, 94, 108

AutoForwardCreateCleanupClose method (IWDFDeviceInitialize), 150, 272, 274, 281

automatic forwarding of I/O requests, 272–273

automatic serialization, 395–396, 539

timer objects, 460




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

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