
Toward non-blocking asynchronous I/O - ingve
https://lwn.net/Articles/724198/
======
filereaper
Previous comment on Async I/O:
[https://news.ycombinator.com/item?id=9584269](https://news.ycombinator.com/item?id=9584269)

Offtopic: I wonder if we can go the _other way_ , let NT handle the async IO
and via the newly released WSL and keep a GNU/Linux user space.

~~~
trentnelson
Well wasn't that a pleasant surprise to see you were quoting me :-)

I was about to say it's so disappointing reading articles like this (about
trying to improve AIO on *nix) because no-one ever seems to want to look at
the details of how NT does asynchronous I/O.

On the other hand, I'm not that surprised -- it's been about six years and a
lot of study since I started looking at NT's async I/O implementation (or
rather, their I/O request packet driven subsystem). The thing that stands out
the most is how pervasive the architectural difference is with NT to afford
such functionality -- you need coordination from the file system, cache
manager, object manager, driver code, and executive at the kernel level, and a
large swath of userland support (thread pools, overlapped I/O, completion
ports, RIO etc) in order to leverage the functionality.

