in reply to device I/O interceptor

You may be asking the wrong question. Devices have a specific function - be it storage, redirection, hardware interfacing, whatever - and your notional device would do nothing more than hold the data for a while and return it. If that's the case, then why not just use a named pipe? You could write to it and read from it at your leisure, and all you need to know is what already know (at least I assume you do) about reading from/writing to filehandles.


--
"Language shapes the way we think, and determines what we can think about."
-- B. L. Whorf