Re: Good point of Linux over Windows NT

Gordon Chaffee (chaffee@home.com)
Tue, 21 Jan 1997 10:36:59 -0800


David S. Miller wrote:
> Kernel level support for async-IO is something that should be at least
> thought about. From the UNIX's that I've heard actually do it, they
> limit you to one outstanding async-IO request per task/thread. This
> seems to suggest it is not a trivial problem to solve at all.
>
> From what I've heard NT allows numerous (unlimited?) outstanding
> async-IO requests to be queued to the system, and programmers love
> this. Can someone validate this? It's what I've heard, I want to
> know if it is true.

This is true. What NT has is an IRP (I/O request packet) stack.
Each new request for I/O gets thrown on the stack. (Actually, it
is really a fifo, but they call it a stack.) The system will
handle this by default, but the device driver can choose to manage
it own IRP queues. When a packet has been processed, you can mark
the packet as done. This signals the user level that the packet
has been emptied or filled or whatever.

Gordon Chaffee
chaffee@home.com