Character oriented peripheral devices are relatively slow ( 1000 charaeters per second) and involve character by character transmission of variable length, usually short, records.
A device handler (as its name suggests) is the software part of the interface between a device and the general system. In general, the device handler is the only part of the software which recognises the idiosyncrasies of a particular device.
As far as possible or reasonable, a single device driver is written to serve many separate devices of similar types, and, where appropriate, several such devices simultaneously. The group of “interactive terminals” (with keyboard input and a serial printer or visual display output) can just be coerced with difficulty into a single device driver, as the reader may judge during his perusal of the file “tty.c”.
The standard UNIX device handlers for character devices make use of the procedures “putc” and “getc” which store and retrieve characters into and from a standard buffer pool. This will be described in more detail in Chapter Twenty-Three.
The “PDP11 Peripherals Handbook” should be consulted for more complete information on the device controller hardware and the devices themselves.