← Back to Patent Explorer
US5974474A Expired / Lapsed US ⏱️ 0.0 years remaining

System for automatic hardware identification and configuration where instance values are unique within the computer system and resource requirement conflicts are resolved by modifying resource settings

Assignee: RPX Corp
•
Filing: 1997-03-14
•
Granted: 1999-10-26
•
Expires: 2017-03-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An automatic identification system in a computer system having a plurality of hardware instances located on hardware devices in the computer system. The computer system includes a plurality of physical slots each configured to receive a hardware device and referenced by a slot number. The system comprises means for assigning a hardware instance value to each of the plurality of hardware instances, the hardware instance value being unique within the computer system when two or more of the plurality of physical slots are assigned a slot number that is not unique within the computer system. Advantageously, the hardware instance value is unique within the computer system when two or more of the plurality of hardware instances are located on one of the hardware devices or when one or more of the hardware devices is installed in an expansion chassis coupled to the computer system. The hardware instance value is also unique within the computer system when one of the hardware devices includes one or more of the hardware instances coupled to an I/O bus within the hardware device or when one or more of the hardware devices is installed on a system board in the computer system. In one embodiment of the invention, the hardware instance value is a hardware instance number. In another embodiment, the hardware instance value is a hardware instance name that is easily identifiable by the user.

Inventors

  • 👤 Rey R. Furner
  • 👤 Prabhakar Krishnaswami
  • 👤 Jeffrey A. Nordin
  • 👤 Michael E. Rex
  • 👤 Mark Dakins
  • 👤 Karl G. Jorgensen

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 13:54
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/4401; G06F9/4411; G06F13/00; G06F13/10

Claims Analysis

Total Claims: 68
Claim 1
Independent Claim 121 words
A automatic identification system in a computer system having a plurality of hardware instances located on hardware devices in the computer system, the computer system including a plurality of physical slots each configured to connect to a hardware device and referenced by a slot number, the system comprising: means for assigning a hardware instance value to each of the plurality of hardware instances, said hardware instance value being unique within the computer system and based upon the physical slot number of the physical slot to which the hardware device is connected, said means configured to assign said unique hardware instance regardless of a quantity of physical slots that are assigned a slot number that is not unique within the computer system.
Claim 2
Dependent Claim 121 words
A automatic identification system in a computer system having a plurality of hardware instances located on hardware devices in the computer system, the computer system including a plurality of physical slots each configured to connect to a hardware device and referenced by a slot number, the system comprising: means for assigning a hardware instance value to each of the plurality of hardware instances, said hardware instance value being unique within the computer system and based upon the physical slot number of the physical slot to which the hardware device is connected, said means configured to assign said unique hardware instance regardless of a quantity of physical slots that are assigned a slot number that is not unique within the computer system.
Claim 3
Dependent Claim 23 words
The system of claim 1, wherein two or more of the plurality of hardware instances are located on one of the hardware devices.
Claim 4
Dependent Claim 24 words
The system of claim 1, wherein one or more of the hardware devices is installed in an expansion chassis coupled to the computer system.
Claim 5
Dependent Claim 28 words
The system of claim 1, wherein one of the hardware devices includes one or more of the hardware instances coupled to an I/O bus within the hardware device.
Claim 6
Dependent Claim 23 words
The system of claim 1, wherein one or more of the hardware devices is installed on a system board in the computer system.
Claim 7
Dependent Claim 15 words
The system of claim 1, wherein said hardware instance value is a hardware instance number.
Claim 8
Dependent Claim 15 words
The system of claim 1, wherein said hardware instance value is a hardware instance name.
Claim 9
Dependent Claim 55 words
The system of claim 1, wherein each of the hardware devices contains a bus tag and a device identifier for each hardware instance on the hardware device, and wherein, for each hardware instance, said hardware instance value is a hardware instance number associated with the bus tag and device identifier for said each hardware instance.
Claim 10
Dependent Claim 53 words
The system of claim 6, wherein a first one or more of the plurality of physical slots is assigned a slot number unique within the computer system, and wherein, for each the plurality of hardware instances installed within said first physical slots, said hardware instance number is equal to said unique slot number.
Claim 11
Dependent Claim 78 words
The system of claim 6, wherein a second two or more of the plurality of physical slots is assigned a slot number that is non-unique within the computer system, and wherein, for each the plurality of hardware instances installed within said second physical slots, said hardware instance number is equal to said unique slot number and a sequence number associated with said hardware instance, said sequence number being unique for each said hardware instance in said physical slot.
Claim 12
Dependent Claim 62 words
The system of claim 6, wherein one or more third hardware instances do not correspond to a physical slot within the computer system, and wherein, for each the third hardware instances, said hardware instance number is equal to said unique slot number and a sequence number associated with said hardware instance, said sequence number being unique for each said third hardware instance.
Claim 13
Dependent Claim 25 words
The system of claim 1, wherein the physical slot number of said two or more of the plurality of hardware instances is the same value.
Claim 14
Dependent Claim 139 words
An identification and configuration system in a computer system having a hardware instance and a plurality of drivers capable of supporting the hardware instance, the hardware instance including a plurality of resource settings, the system comprising: means for determining a relative capability of each of the plurality of drivers to support the hardware instance; means for selecting an optimal driver having a capability to support the hardware instance than is greater than a capability of other drivers to support the instance; and means for resolving conflicts between a resource setting of the hardware instance and a resource setting of another hardware instance, wherein, for each identified resource setting conflict, said means for resolving either modifies the resource setting in the hardware instance to a non-conflicting setting or, if unable to do so, prevents loading of the selected optimal driver.
Claim 15
Dependent Claim 139 words
An identification and configuration system in a computer system having a hardware instance and a plurality of drivers capable of supporting the hardware instance, the hardware instance including a plurality of resource settings, the system comprising: means for determining a relative capability of each of the plurality of drivers to support the hardware instance; means for selecting an optimal driver having a capability to support the hardware instance than is greater than a capability of other drivers to support the instance; and means for resolving conflicts between a resource setting of the hardware instance and a resource setting of another hardware instance, wherein, for each identified resource setting conflict, said means for resolving either modifies the resource setting in the hardware instance to a non-conflicting setting or, if unable to do so, prevents loading of the selected optimal driver.
Claim 16
Dependent Claim 13 words
The system of claim 13, further comprising: means for installing said optimal driver.
Claim 17
Dependent Claim 38 words
The system of claim 13, wherein said capability of a driver to support the hardware instance is represented by a value derived from one or more factors, each reflecting a driver's capability to support a particular hardware instance.
Claim 18
Dependent Claim 29 words
The system of claim 15, wherein said factors are weighted in accordance with a degree to which the factor reflects a driver's capability to support a particular hardware instance.
Claim 19
Dependent Claim 17 words
The system of claim 16, wherein said value is the sum of said weights of said factors.
Claim 20
Dependent Claim 44 words
The system of claim 15, wherein said factors are associated with a first product identifier identifying the hardware instance, and plurality of second product identifiers, each identifying, for an associated one of said plurality of drivers, the hardware instances supported by said associated driver.
Claim 21
Dependent Claim 19 words
The system of claim 18, wherein a first factor is a similarity between said first and second product identifier.
Claim 22
Dependent Claim 23 words
The system of claim 18, wherein said first factor is weighted value according to a similarity between said first and second product identifier.
Claim 23
Dependent Claim 42 words
The system of claim 18, wherein said selecting means comprises: means for comparing portions of said first and second product identifiers, wherein said factors include second factors, each representing a similarity between said compared portions of said first and second product identifiers.
Claim 24
Dependent Claim 27 words
The system of claim 19, wherein said second factors are weighted values according to a similarity between said corresponding portions of said first and second product identifier.
Claim 25
Dependent Claim 24 words
The system of claim 22, wherein said degree of similarity is a degree of difference between string values of said compared product identifier subfields.
Claim 26
Dependent Claim 54 words
The system of claim 23, wherein said portions of said first and second product identifiers comprise: a model ID identifying the model of the associated hardware instance; a vendor ID identifying the vendor of the hardware instance; and a vendor device ID identifying the device number of the hardware instance assigned by the vendor.
Claim 27
Dependent Claim 27 words
The system of claim 24, wherein said portions of said first and second product identifiers further comprise: a product revision identifying a version of the hardware instance.
Claim 28
Dependent Claim 52 words
The system of claim 25, wherein said portions of said first and second product identifiers further comprise: a subvendor ID identifies the vendor which manufactures the particular chip or hardware component in the hardware instance; and a subvendor device ID identifies the vendor-assigned device number for the components of the hardware instance.
Claim 29
Dependent Claim 197 words
An automatic identification and configuration system in a computer system having a plurality of hardware instances located on hardware devices in the computer system, the computer system including a plurality of physical slots each configured to receive a hardware device and referenced by a slot number, and a plurality of drivers capable of supporting the hardware instances, the system comprising: means for assigning a hardware instance value to each of the plurality of hardware instances, said hardware instance value being unique within the computer system; means for determining a relative capability of each of the plurality of drivers to support the hardware instance; means for selecting an optimal driver having a capability to support the hardware instance that is greater than a capability of other drivers to support the hardware instance; means for resolving conflicts between a resource setting of the hardware instance and a resource setting of another hardware instance, wherein, for each identified resource setting conflict, said means for resolving either modifies the resource setting in the first hardware configuration information to a non-conflicting setting or, if unable to do so, prevents loading of the selected optimal driver; and means for installing said optimal driver.
Claim 30
Dependent Claim 197 words
An automatic identification and configuration system in a computer system having a plurality of hardware instances located on hardware devices in the computer system, the computer system including a plurality of physical slots each configured to receive a hardware device and referenced by a slot number, and a plurality of drivers capable of supporting the hardware instances, the system comprising: means for assigning a hardware instance value to each of the plurality of hardware instances, said hardware instance value being unique within the computer system; means for determining a relative capability of each of the plurality of drivers to support the hardware instance; means for selecting an optimal driver having a capability to support the hardware instance that is greater than a capability of other drivers to support the hardware instance; means for resolving conflicts between a resource setting of the hardware instance and a resource setting of another hardware instance, wherein, for each identified resource setting conflict, said means for resolving either modifies the resource setting in the first hardware configuration information to a non-conflicting setting or, if unable to do so, prevents loading of the selected optimal driver; and means for installing said optimal driver.
Claim 31
Dependent Claim 38 words
The system of claim 27, wherein said capability of a driver to support the hardware instance is represented by a value derived from one or more factors, each reflecting a driver's capability to support a particular hardware instance.
Claim 32
Dependent Claim 29 words
The system of claim 28, wherein said factors are weighted in accordance with a degree to which the factor reflects a driver's capability to support a particular hardware instance.
Claim 33
Dependent Claim 44 words
The system of claim 29, wherein said factors are associated with a first product identifier identifying the hardware instance, and plurality of second product identifiers, each identifying, for an associated one of said plurality of drivers, the hardware instances supported by said associated driver.
Claim 34
Dependent Claim 19 words
The system of claim 29, wherein a first factor is a similarity between said first and second product identifier.
Claim 35
Dependent Claim 64 words
The system of claim 29, wherein said selecting means comprises: means for comparing portions of said first and second product identifiers, wherein said factors include second factors, each representing a similarity between said compared portions of said first and second product identifiers, wherein said second factors are weighted values according to a similarity between said corresponding portions of said first and second product identifier.
Claim 36
Dependent Claim 64 words
The system of claim 32, wherein said portions of said first and second product identifiers comprise: a model ID identifying the model of the associated hardware instance; a vendor ID identifying the vendor of the hardware instance; a vendor device ID identifying the device number of the hardware instance assigned by the vendor; and a product revision identifying a version of the hardware instance.
Claim 37
Dependent Claim 52 words
The system of claim 33, wherein said portions of said first and second product identifiers further comprise: a subvendor ID identifies the vendor which manufactures the particular chip or hardware component in the hardware instance; and a subvendor device ID identifies the vendor-assigned device number for the components of the hardware instance.
Claim 38
Dependent Claim 55 words
The system of claim 31, wherein each of the hardware devices contains a bus tag and a device identifier for each hardware instance on the hardware device, and wherein, for each hardware instance, said hardware instance value is a hardware instance number associated with the bus tag and device identifier for said each hardware instance.
Claim 39
Dependent Claim 109 words
A hardware identification and configuration system in a general purpose computer system including a first hardware device having first hardware configuration information and a second hardware device having second hardware configuration information, the system comprising: an identification mechanism configured to obtain said first and second hardware configuration information; and a configuration mechanism configured to resolve a conflict between said first and second hardware configuration information, wherein said conflict is a conflict between resource requirements of said first and second hardware configuration information and wherein, for each identified resource setting conflict, said configuration mechanism for resolving modifies the resource setting in the first hardware configuration information to a non-conflicting setting.
Claim 40
Dependent Claim 109 words
A hardware identification and configuration system in a general purpose computer system including a first hardware device having first hardware configuration information and a second hardware device having second hardware configuration information, the system comprising: an identification mechanism configured to obtain said first and second hardware configuration information; and a configuration mechanism configured to resolve a conflict between said first and second hardware configuration information, wherein said conflict is a conflict between resource requirements of said first and second hardware configuration information and wherein, for each identified resource setting conflict, said configuration mechanism for resolving modifies the resource setting in the first hardware configuration information to a non-conflicting setting.
Claim 41
Dependent Claim 23 words
The system of claim 36, wherein said first and second hardware configuration information are obtained from the first and second hardware devices, respectively.
Claim 42
Dependent Claim 27 words
The system of claim 37, wherein said first and second hardware configuration information are obtained hardware device registers located in said first and second hardware devices, respectively.
Claim 43
Dependent Claim 25 words
The system of claim 36, wherein said first and second hardware configuration information are obtained from a table in a memory of the computer system.
Claim 44
Dependent Claim 29 words
The system of claim 36, further comprising: a manual driver selection modification mechanism configured to allow a user to review and modify said first and second hardware configuration information.
Claim 45
Independent Claim 149 words
A method for automatically identifying and configuring a plurality of hardware instances on a computer system, the method comprising the following steps: a) uniquely identifying each of the plurality of hardware instances; b) selecting an optimal driver with the highest relative capability from a plurality of drivers configured to support each of the plurality of hardware instances; c) resolving a conflict between a resource requirement setting of a first hardware instance and a resource requirement setting of a second hardware instance, including the steps of, 1) determining that the conflict exists, and 2) attempting to modifying a resource requirement setting in the first hardware instance to a non-conflicting setting when a conflict is identified in step 1); and d) if the resourd requirement setting is a non-conflicting setting, loading said selected optimal driver into a run-time memory of the computer system, otherwise, avoid loading of the selected optimal driver.
Claim 46
Independent Claim 149 words
A method for automatically identifying and configuring a plurality of hardware instances on a computer system, the method comprising the following steps: a) uniquely identifying each of the plurality of hardware instances; b) selecting an optimal driver with the highest relative capability from a plurality of drivers configured to support each of the plurality of hardware instances; c) resolving a conflict between a resource requirement setting of a first hardware instance and a resource requirement setting of a second hardware instance, including the steps of, 1) determining that the conflict exists, and 2) attempting to modifying a resource requirement setting in the first hardware instance to a non-conflicting setting when a conflict is identified in step 1); and d) if the resourd requirement setting is a non-conflicting setting, loading said selected optimal driver into a run-time memory of the computer system, otherwise, avoid loading of the selected optimal driver.
Claim 47
Dependent Claim 56 words
The method of claim 41, wherein said step a) includes the steps of: 1) identifying the plurality of drivers stored on the computer system; 2) scanning busses for the plurality of hardware instances; 3) identifying each of the plurality of hardware instances; and 4) scanning each of the plurality of hardware instances for hardware instance information.
Claim 48
Dependent Claim 27 words
The method of claim 42, further comprising the step of: 5) storing the hardware instance information in a table in said run-time memory of the computer system.
Claim 49
Dependent Claim 69 words
The method of claim 42, wherein each of a plurality of driver descriptors, each associated with one or said plurality of drivers, includes a product identifier specifying specific hardware instances that each of said plurality of drivers can support and wherein said step 1) comprises the step of: (a) scanning each of said plurality of driver descriptors associated with each of said plurality of drivers for said product identifier.
Claim 50
Dependent Claim 35 words
The method of claim 44, wherein said step 5) comprises the step of: (a) scanning registers of each hardware instance for hardware instance information, said hardware instance information including a product identifier and resource settings.
Claim 51
Dependent Claim 26 words
The method of claim 45, wherein the product identifier of each hardware instance and the product identifier of each driver descriptor includes a plurality of factors.
Claim 52
Dependent Claim 66 words
The method of claim 42, wherein said step 3) comprises the steps of: (a) uniquely identifying each hardware instance by a hardware instance number equal to a physical slot number on the computer system, when said physical slot number is unique; and (b) uniquely identifying each hardware instance by a hardware instance number equal to a sequence number when said physical slot number is not unique.
Claim 53
Dependent Claim 87 words
The method of claim 47, wherein said step b) comprises the steps of: 1) comparing each factor for the product identifier of each hardware instance to the associated factor for the product identifier of each driver descriptor; 2) determining a weighted score for each factor based on the comparing step; 3) combining the weighted scores of each factor to produce a total weighted value for each of said driver descriptors; and 4) selecting said optimal driver from said plurality of drivers based on said total weighted value.
Claim 54
Dependent Claim 164 words
A computer readable medium encoded with a program that, when executed on a computer system, performs a method for automatically identifying and configuring a plurality of hardware instances on the computer system, the method comprising steps of: a) uniquely identifying each of the plurality of hardware instances; b) selecting an optimal driver with the highest relative capability from a plurality of drivers configured to support each of the plurality of hardware instances; c) resolving a conflict between a resource requirement setting of a first hardware instance and a resource requirement setting of a second hardware instance, including the steps of, 1) determining that the conflict exists, and 2) attempting to modifying a resource requirement setting in the first hardware instance to a non-conflicting setting when a conflict is identified in step 1); and d) if the resource requirement setting is a non-conflicting setting, loading said selected optimal driver into a run-time memory of the computer system, otherwise, avoid loading of the selected optimal driver.
Claim 55
Dependent Claim 164 words
A computer readable medium encoded with a program that, when executed on a computer system, performs a method for automatically identifying and configuring a plurality of hardware instances on the computer system, the method comprising steps of: a) uniquely identifying each of the plurality of hardware instances; b) selecting an optimal driver with the highest relative capability from a plurality of drivers configured to support each of the plurality of hardware instances; c) resolving a conflict between a resource requirement setting of a first hardware instance and a resource requirement setting of a second hardware instance, including the steps of, 1) determining that the conflict exists, and 2) attempting to modifying a resource requirement setting in the first hardware instance to a non-conflicting setting when a conflict is identified in step 1); and d) if the resource requirement setting is a non-conflicting setting, loading said selected optimal driver into a run-time memory of the computer system, otherwise, avoid loading of the selected optimal driver.
Claim 56
Dependent Claim 58 words
The computer readable medium of claim 49, wherein said step a) includes the steps of: 1) identifying the plurality of drivers stored on the computer system; 2) scanning busses for the plurality of hardware instances; 3) identifying each of the plurality of hardware instances; and 4) scanning each of the plurality of hardware instances for hardware instance information.
Claim 57
Dependent Claim 32 words
The computer readable medium of claim 50, wherein the method further comprises a step of: 5) storing the hardware instance information in a table in said run-time memory of the computer system.
Claim 58
Dependent Claim 71 words
The computer readable medium of claim 50, wherein each of a plurality of driver descriptors, each associated with one or said plurality of drivers, includes a product identifier specifying specific hardware instances that each of said plurality of drivers can support and wherein said step 1) comprises the step of: (a) scanning each of said plurality of driver descriptors associated with each of said plurality of drivers for said product identifier.
Claim 59
Dependent Claim 37 words
The computer readable medium of claim 52, wherein said step 5) comprises the step of: (a) scanning registers of each hardware instance for hardware instance information, said hardware instance information including a product identifier and resource settings.
Claim 60
Dependent Claim 28 words
The computer readable medium of claim 53, wherein the product identifier of each hardware instance and the product identifier of each driver descriptor includes a plurality of factors.
Claim 61
Dependent Claim 68 words
The computer readable medium of claim 50, wherein said step 3) comprises the steps of: (a) uniquely identifying each hardware instance by a hardware instance number equal to a physical slot number on the computer system, when said physical slot number is unique; and (b) uniquely identifying each hardware instance by a hardware instance number equal to a sequence number when said physical slot number is not unique.
Claim 62
Dependent Claim 89 words
The computer readable medium of claim 55, wherein said step b) comprises the steps of: 1) comparing each factor for the product identifier of each hardware instance to the associated factor for the product identifier of each driver descriptor; 2) determining a weighted score for each factor based on the comparing step: 3) combining the weighted scores of each factor to produce a total weighted value for each of said driver descriptors; and 4) selecting said optimal driver from said plurality of drivers based on said total weighted value.
Claim 63
Dependent Claim 137 words
A computer program product comprising a computer readable medium having a computer program logic thereon for enabling a processor in a computer system to automatically identify and configure hardware in a general purpose computer system, the computer system including a first hardware device having first hardware configuration information and a second hardware device having second hardware configuration information, the computer program product comprising: an identification mechanism configured to obtain said first and second hardware configuration information; and a configuration mechanism configured to resolve a conflict between said first and second hardware configuration information, wherein said conflict is a conflict between resource requirements of said first and second hardware configuration information and wherein, for each identified resource setting conflict, said configuration mechanism for resolving modifies the resource setting in the first hardware configuration information to a non-conflicting setting.
Claim 64
Dependent Claim 137 words
A computer program product comprising a computer readable medium having a computer program logic thereon for enabling a processor in a computer system to automatically identify and configure hardware in a general purpose computer system, the computer system including a first hardware device having first hardware configuration information and a second hardware device having second hardware configuration information, the computer program product comprising: an identification mechanism configured to obtain said first and second hardware configuration information; and a configuration mechanism configured to resolve a conflict between said first and second hardware configuration information, wherein said conflict is a conflict between resource requirements of said first and second hardware configuration information and wherein, for each identified resource setting conflict, said configuration mechanism for resolving modifies the resource setting in the first hardware configuration information to a non-conflicting setting.
Claim 65
Dependent Claim 25 words
The computer program product of claim 57, wherein said first and second hardware configuration information are obtained from the first and second hardware devices, respectively.
Claim 66
Dependent Claim 29 words
The computer program product of claim 58, wherein said first and second hardware configuration information are obtained hardware device registers located in said first and second hardware devices, respectively.
Claim 67
Dependent Claim 27 words
The computer program product of claim 57, wherein said first and second hardware configuration information are obtained from a table in a memory of the computer system.
Claim 68
Dependent Claim 31 words
The computer program product of claim 57, further comprising: a manual driver selection modification mechanism configured to allow a user to review and modify said first and second hardware configuration information.

References Cited (Backward Citations)

US4974151A Cited
US4979107A Cited
US5696605A Cited
US5426780A Cited
US5668992A Cited
US5630076A Cited
US5734911A Cited
US5794032A Cited
US5814969A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-10-25 2003-04-26 2003-10-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-10-25 2007-04-26 2007-10-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-10-25 2011-04-26 2011-10-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag