User's Manual
Multi-path intermediate class driver
The intermediate class (IC) driver, HPtapeFailover_mpio, has two halves. The upper half is a
virtual bus (VB) driver. This VB driver provides a virtual device which manages the paths to all of
the devices that support failover. The lower half is a multi-path function driver for the devices using
the hardware ID created by the lower level filter driver. Windows calls these hardware paths
physical device objects (PDOs). The intermediate class driver creates two different type of devices
in the Windows device manager. The devices associated with the physical paths is shown as a
"SCSI" bus and the device associated with the virtual device that manages the paths is shown as
a "ROOT" device.
The lower half of this driver acts like a class driver and it attaches to the devices presented by the
lower driver. The upper half acts like a virtual bus driver, presenting abstractions of devices to the
layers above. For example, a single tape device may have many paths to it, but only a single
virtual tape device is presented to the layers above, and the driver transparently manages the
multiple paths to the physical tape device.
Figure 16 (page 40) shows the various device objects presented by the drivers. The abbreviations
are:
• PDO: Physical device object
• FDO: Functional device object
• FPDO: PDO created by bus filter driver
• FFDO: FDO created by bus filter driver
• CDO: Control device object; used by diagnostic interface
Windows driver theory of operation 39