A computer system uses simplified device drivers for operating hardware
devices. A simplified device driver for a hardware device of a given
device type, such as a flatbed scanner, works with a system-supplied
common driver for that given device type. The common driver and the
simplified driver together function like a regular device driver. The
simplified device driver implements a small number of entry point
functions corresponding to a pre-selected set of operation commands
"generic" to hardware devices of that given device type. When an
application makes a request for an operation by the device, the request
is passed through a device driver interface (DDI) to the common driver.
The common driver then calls the entry point functions in the simplified
device driver to carry out the requested operation.