@dalias @navi @jschauma @gantua @mirabilos @lispi314 oh I'm thinking about POSIX AIO on everything that isn't linux.
They are zero copy - once you call aio_read / aio_write, you're not allowed to touch the payload buffers. Thus the OS is free to wire them down and use them as payloads to NICs and filesystem/disk buffers.
Source: I did this for a long, long time in FreeBSD and Solaris to get much higher raw disk / O_DIRECT filesystem throughput back when we had proxy caches on spinning rust ;-)