Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Before Posting...
Please check out the Community Guidelines in the Announcements and Administration Category.

Re: [ntdev] Re: [ntdev] [NTDEV]How to pending a IO Request in WDF driver on Windows 7

Tim_RobertsTim_Roberts Member - All Emails Posts: 13,007
lizzoe wrote:
> You mean that's impossible in synchronous I/O? A uncompleted Read
> request is bound to block other Write request? Is there a document
> can explain it ?

Of course it is. That's the very definition if "synchronous I/O". This
is just a fundamental principle of Windows user mode I/O, and has very
little to do with kernel drivers. Unless you use overlapped I/O, you
can only have one I/O request at a time on any given file handle. A
ReadFile (or WriteFile or DeviceIoControl) call will not return until
the IRP is completed, and no other thread can submit another request.

If you want to have multiple I/O requests on a single file handle, you
must use overlapped I/O.

With overlapped I/O, as soon as your dispatch handler returns, the
application can continue on to do other things, whether or not you
completed the IRP.

Tim Roberts,
Providenza & Boekelheide, Inc.

Tim Roberts, [email protected]
Providenza & Boekelheide, Inc.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Upcoming OSR Seminars
Developing Minifilters 29 July 2019 OSR Seminar Space
Writing WDF Drivers 23 Sept 2019 OSR Seminar Space
Kernel Debugging 21 Oct 2019 OSR Seminar Space
Internals & Software Drivers 18 Nov 2019 Dulles, VA