Which ones? The PIOCTL ones are, for a lack of current interface, a way for interfacing to the lower level IO system through a catchall opcode. It can be anything from setting terminal modes, buffering, separator characters, the list goes on.
Although we probably want to make separate ops for common things like setting blocking mode, async/sync, etc. there are usually a lot of little operations or queries that you might want to do on an IO system that might not warrant a separate op for each.
I personally don't like to add an opcode for every special case because most of them are very rarely used, but as usual its up for discussion.
-Melvin
At 04:46 PM 10/10/2003 +0100, Nicholas Clark wrote:
On Fri, Oct 10, 2003 at 02:43:10AM -0000, Melvin Smith wrote: > + else if(arg == PIOCTL_BLKBUF) { > + PIO_setbuf(interpreter, pmc, PIO_UNBOUND); > + return 0; > + } > + else return -3;
> case PIOCTL_CMDGETBUFSIZE: > if(b) return b->size; > else return -6; >
What are all these magic numbers about?
Nicholas Clark