Transparent and dynamic management of redundant physical...

Electrical computers and digital data processing systems: input/ – Input/output data processing – Input/output access regulation

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S011000, C710S309000, C710S105000, C710S315000, C714S004110, C714S002000, C714S006130

Reexamination Certificate

active

06704812

ABSTRACT:

FIELD OF THE INVENTION
This invention relates generally to field of computer processing and more specifically relates to managing multiple physical paths from a host computer system to peripheral devices.
BACKGROUND OF THE INVENTION
Advances in computer processor architecture have resulted in increased processing speeds up to and beyond one gigahertz. One aspect of computer development then has been directed to having tasks immediately available for these fast busy processors. Management of internal resources to keep the processor busy may include both hardware and software multithreading registers, cache management, pipeline allocation, branch prediction, etc. The external resources may refer to external disk drives, external memory storage, printing, network communication, etc. Typically, management of data for processing along these multiple external pathways, which are usually multiple buses of various protocols to and from these attached peripheral devices, has been relegated to the host operating system and/or the host device driver software applications. Typically during processing to these peripheral devices, the host operating system executes a device driver application or function so that it can communicate with an adapter connected to the peripheral device. The system's operating system executes, for example, an application program until an interrupt or some instruction in the program indicates that a peripheral device needs data, has the required data, or otherwise requires attention. A conventional context switch procedure changes the context of the host processing system between the device driver and the application program that had been executing.
Given the increasing complexity and pervasiveness of today's computer systems and the increased reliance by the users upon these systems, the management of the physical pathways to/from a host computer system has been a neglected aspect of information handling systems. There are, moreover, multiple buses of many different protocols; just to name a few of the protocols: PCI and PCI-X, Token Ring, Gigabyte Ethernet, Ethernet, Fibre Channel, SSA, Fiber Channel Arbitrated Loop (FCAL), Ultra3 SCSI, Infiniband, FDDI, ATM, 1394, ESCON, wireless relays, Twinax, LAN connections, WAN connections, high performance graphics, etc. It is a management nightmare for the operating system to track and maintain the state of all these buses and their various protocols and schemes for ordering or prioritizing commands. A processor's efficiency is severely compromised if it has to manage data transfer on all these various buses at the same time. Bus protocols, moreover, are constantly evolving and moving towards industry standardization but until then connecting to a new device may involve connecting to a new bus with its own proprietary protocol.
Increasingly so in computer systems, there may be more than one physical pathway from an adapter to its peripheral or external device. One method to manage external bus traffic that is becoming increasingly congested is to use devices with multiple ports, each port having its own I/O adapter that may or may not have a shared or unique cache and with each port having a distinct independent physical pathway to the same external device. Usually, the allocation of one pathway as the primary pathway and another or others as backup pathway(s) is statically assigned in microcode at initialization by the host operating system or the device driver. The host operating system may be aware of the multiple pathways, or may just consider each physical path as a different device. In the latter scenario, even though one device X is connected to the host computer system through a dual-ported adapter and there are two independent physical paths to device X, the host operating system sees two devices with the same name X. In any event, to change or reroute data from the primary to the backup path, the host computer's operating system becomes involved.
The host operating system may have difficulty maintaining cache coherency of adapter caches if there is a separate cache in the adapter for each pathway to the same device. For example, imagine that the host wants to access an external memory device having independent physical paths each with its own adapter. The cache associated with one physical path may have an outstanding WRITE command that hasn't been executed but before it can write the fresh data to the memory location in the peripheral device, a READ command that actually issued after the WRITE command accesses that memory location on the other path and obtains undetected stale data. Because the problem is undetected, no error is generated. Thus, there is a need to maintain cache coherency within an adapter and manage the appropriate sequencing of commands on the same or different physical paths to a device having multiple pathways.
At the present time, there is no mechanism for dynamic usage and load balancing amongst the redundant physical paths. Once a physical path has failed, moreover, the host operating system has no simple means to dynamically use alternate paths or to recover use of the failed path once it becomes available. It is further desirable to adapt to new devices and new physical paths without involving complications to the operating system of the host computer, i.e., it is important to be able to attach new and different devices to a host computer system independently of the operating system. Investments in new and/or unique hardware and/or packaging every time a new peripheral device is installed is unacceptable in today's paradigm of modular computing.
It is thus an object of the invention to provide for efficient computing resources by the management of multiple independent pathways to a computer system's peripheral devices.
Other objects, features, and characteristics of the invention; methods, operation, and functions of the related elements of the structure; combination of parts; and economies of manufacture will become apparent from the following detailed description of the preferred embodiments and accompanying Drawing, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures.
SUMMARY OF THE INVENTION
To satisfy this objective and others in a computer system, a method of managing command and data flow to peripheral devices is disclosed, the method comprising the steps of determining the number of independent physical paths to at least one peripheral device connected to the computer system, resolving all the different independent physical paths to the peripheral device into one logical path, presenting the one logical path to any components of the computer system that originates or preprocesses a command destined for the peripheral device, receiving the command, and for each received command, selecting one independent physical path on which to route the received command to the peripheral device.
The step of determining the number of independent physical paths to the peripheral device connected to the computer system may further comprise reading all the identification codes uniquely associated with the peripheral device on all the independent physical paths. The unique identification code associated with the peripheral device may be a world wide identification code and/or vital product data.
The step of resolving all the independent physical paths to the peripheral device into one logical path may further comprise determining if there is a duplicative identification code on the independent physical paths thereby indicating that the peripheral device has a plurality of independent physical paths connected to it, and if so, correlating those independent physical paths.
The method of method of managing command and data flow to peripheral devices may further comprise preserving protocol requirements of the selected physical path.
The step of selecting one of the independent physical paths on which to route the command to the peripheral device may further comprise determining the nu

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Transparent and dynamic management of redundant physical... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Transparent and dynamic management of redundant physical..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Transparent and dynamic management of redundant physical... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3268199

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.