A redundancy manager preferably in an I/O adapter has been disclosed to
manage commands to peripheral devices in a computer system. These
peripheral devices have multiple ports and may have a different bus
associated with each port. The buses, referred to as independent pathways,
moreover, need not have the same protocol. The redundancy manager
determines the number of independent pathways connected to the peripheral
device, presents only one logical device to the operating system and any
device driver and any other command or device processing logic in the
command path before the redundancy manager. For each incoming command, the
redundancy manager determines which pathways are properly functioning and
selects the best pathway for the command based on load balancing
considerations and any ordering semantics that must be preserved in the
incoming command and any outstanding commands and associated data that
have not yet executed. The redundancy manager further reroutes the command
to an alternate path and resets the device for the alternate path if the
selected path failed. Thus, a dynamic mechanism and method to manage
multiple pathways to I/O devices such as storage disks do not require the
intervention of either the operating system of the computer or any device
driver associated with the device or the interconnecting bus.
Han divulgado a un encargado de la redundancia preferiblemente en un adaptador de I/O para manejar comandos a los dispositivos periféricos en un sistema informático. Estos dispositivos periféricos tienen puertos múltiples y pueden tener un diverso autobús asociado a cada puerto. Los autobúses, referidos pues los caminos independientes, por otra parte, no necesitan tener el mismo protocolo. El encargado de la redundancia determina el número de los caminos independientes conectados con el dispositivo periférico, presenta solamente un dispositivo lógico al sistema operativo y cualquier driver de dispositivo y cualquier otro comando o lógica de proceso del dispositivo en la trayectoria del comando ante el encargado de la redundancia. Para cada comando entrante, el encargado de la redundancia se determina están funcionando qué caminos correctamente y selecciona el mejor camino para el comando basado en las consideraciones que balancean de la carga y cualquier semántica que ordena que se deban preservar en el comando entrante y cualesquiera comandos excepcionales y datos asociados que todavía no se hayan ejecutado. El encargado de la redundancia más futuro reencamina el comando a una trayectoria alterna y reajusta el dispositivo para la trayectoria alterna si la trayectoria seleccionada falló. Así, un mecanismo y un método dinámicos para manejar caminos múltiples a los dispositivos de I/O tales como discos del almacenaje no requieren la intervención del sistema operativo de la computadora o de ningún driver de dispositivo asociado al dispositivo o al autobús de interconexión.