3 ms·
> so obviously wrong that the terabytes of existing POSIX-compatible code is broken, or limited, or something? it is just a really annoying API for a byte stre
by vitiral 4y ago
> so obviously wrong that the terabytes of existing POSIX-compatible code is broken, or limited, or something?
it is just a really annoying API for a byte stream when what you typical want to do with a byte stream is:
* read some number of bytes (lines, a parser, etc), incrementing the ring tail as you go.
* have the buffer asynchronously be filled, incrementing the (volatile) head as it goes
You might be able to just execute a single syscall "fill till eof" and the kernel would just keep your buffer full (through interrupts) without any other calls at all (although you would have to wait if the buffer became empty
Similar mechanisms could be done for interprocess communication.