Adaptive Time-outs in UMDF

The Windows guidelines for I/O completion and cancellation require that drivers:

  • Support cancellation for I/O requests that might take an indefinite period of time to complete.

  • Complete I/O requests within a reasonable period—generally, 10 seconds or less—after cancellation.

  • Do not block I/O threads for an unreasonable period while performing I/O. UMDF I/O threads are a limited resource, so blocking on such a thread for a long time can decrease driver performance.

To aid user-mode drivers in conforming to these guidelines, UMDF supports adaptive time-outs. UMDF tracks the progress on critical I/O operations that can hold up the system if delayed. Critical operations include cleanup, close, cancellation, and Plug and Play ...

Get Developing Drivers with the Windows® Driver Foundation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.