Figure 2.21 illustrates the device objects that represent the parallel and serial devices shown previously in Figure 2.9. The parallel and serial drivers shown in Figure 2.10 create these device objects by calling an I/O support routine.
Figure 2.21 Parallel and Serial Device Objects
Note that the parallel port and serial drivers each create a set of logical device objects: one for each parallel or serial port. Note also that neither driver creates a physical device object for the parallel or serial controller. The target of a parallel or serial I/O operation is always a particular port, so each port must be represented by an NT device object. Figure 2.21 happens to show three parallel and two serial ports, but the system-supplied parallel port and serial drivers can support any number of ports, subject to hardware limitations.
Each parallel class driver shown in Figure 2.10 also creates a device object to represent each target device for the I/O requests that it handles.