On an operating system supporting asynchronous IO, it's possible to fire off an
IO request and collect the results later. This could be bound into programming
languages by having calls like read
and stat
send an IO request, and return
an object which only retrieves the result when read; it would then be easy to
do other computation while waiting for the IO to complete. Implementing this in
C using memory management magic would be especially fun.