Serial communication channels are managed by the Dev.ser driver process. After initializing the hardware, the process itself goes to sleep. Received interrupts place input data directly into the input queue. The first output character on an idle channel is transmitted to the hardware when Dev issues the first kick call into the driver. Subsequent characters are transmitted by the appropriate interrupt being received.
Parallel devices Parallel printer ports are managed by the Dev.par driver process.
When you start Dev.par , you specify a command-line argument that determines which parallel port is installed. You can configure the size of the output buffer with a command-line argument when you start Dev.par . The output buffer can be made very large if you wish to provide a form of software print buffer. The flow of events within the device subsystem is engineered to minimize overhead and maximize throughput when a device is in raw mode. Only when a read operation is pending, and that read operation can now be satisfied, will the interrupt handler schedule Dev to run.