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

System with backup of data storage status and device identification for enabling system recovery after powerloss

Assignee: International Business Machines Corp
•
Filing: 1990-03-07
•
Granted: 1992-09-15
•
Expires: 2010-03-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A technique is described for assuring the global identification and management of interchangeable data storage devices in a data processing system, assuring the integrity of data storage devices after shutdowns or failures and providing these capabilities without changing any current system or application software on the host. This technique also provides high availability of data storage devices by swapping a failing data storage device with a good data storage device without host intervention.

Inventors

  • 👤 Brent C. Beardsley
  • 👤 Lawrence H. Boulia
  • 👤 Robert H. Vosacek

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 20:28
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/10; G06F13/12; G06F13/122; G06F11/00; G06F11/07; G06F11/16; G06F11/20; G06F11/2053; G06F11/2056; G06F11/2064; G06F11/2082; G06F11/2087; G11; G11C; G11C29/00; G11C29/70; G11C29/74; G06F11/006; G06F11/14; G06F11/1446; G06F11/1448; G06F11/1451

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 366 words
A method of retaining information about a data storage subsystem of a data processing system across power downs, said data storage subsystem including a plurality of data storage devices, a controller attached to a host system in said data processing system, said controller including a pair of data storage device controllers and a memory containing vital product data and a joint array structure initialized by said vital product data on initial microprogram load, said vital product data being stored in nonvolatile memory, said data storage device controllers being connected to respective strings of data storage devices, each of said data storage devices being of the same type and having a plurality of data tracks and a status track, said method being performed by said controller transparently to said host system and comprising the steps of: writing on said status track of each said data storage device identification and status information for the device; selecting two of said data storage devices and additionally writing global subsystem status on said status track, said global subsystem status containing information pertaining to all components of the subsystem, including a device number and a subsystem identification number of each data storage devices, said global status pointer being stored in said nonvolatile memory, said joint array structure when initialized containing said address information by which the selected data storage devices are known to the host; when the subsystem is initialized, performing an initial microprogram load to establish an operational data path between attaching channels of said data storage device controllers and said data storage devices; reading the global subsystem status information from each of the two selected data storage devices and, when valid and current global subsystem status is identified, writing said valid and current global subsystem status to the status track of both said data storage devices to insure the information is consistent on both of the devices; as data storage devices become available, reading the device number and subsystem identification number of each data storage device and checking said numbers against the global devices information to ensure that said data storage devices are correctly attached; and notifying the host of available storage paths to said plurality of data storage devices.
Claim 2
Independent Claim 366 words
A method of retaining information about a data storage subsystem of a data processing system across power downs, said data storage subsystem including a plurality of data storage devices, a controller attached to a host system in said data processing system, said controller including a pair of data storage device controllers and a memory containing vital product data and a joint array structure initialized by said vital product data on initial microprogram load, said vital product data being stored in nonvolatile memory, said data storage device controllers being connected to respective strings of data storage devices, each of said data storage devices being of the same type and having a plurality of data tracks and a status track, said method being performed by said controller transparently to said host system and comprising the steps of: writing on said status track of each said data storage device identification and status information for the device; selecting two of said data storage devices and additionally writing global subsystem status on said status track, said global subsystem status containing information pertaining to all components of the subsystem, including a device number and a subsystem identification number of each data storage devices, said global status pointer being stored in said nonvolatile memory, said joint array structure when initialized containing said address information by which the selected data storage devices are known to the host; when the subsystem is initialized, performing an initial microprogram load to establish an operational data path between attaching channels of said data storage device controllers and said data storage devices; reading the global subsystem status information from each of the two selected data storage devices and, when valid and current global subsystem status is identified, writing said valid and current global subsystem status to the status track of both said data storage devices to insure the information is consistent on both of the devices; as data storage devices become available, reading the device number and subsystem identification number of each data storage device and checking said numbers against the global devices information to ensure that said data storage devices are correctly attached; and notifying the host of available storage paths to said plurality of data storage devices.
Claim 3
Dependent Claim 64 words
The method as recited in claim 1 wherein the step of selecting is performed by selecting a first of said two data storage devices in a string attached to a first one of said pair of data storage device controllers and a second of said data storage devices in a string attached to a second one of said pair of data storage device controllers.
Claim 4
Dependent Claim 94 words
The method recited in claim 2 further comprising, in response to a failure of one of said first or second data storage devices, the steps of: incrementing a reconfiguration count in said global status pointer to show that reconfiguration has taken place; selecting a new data storage device to replace the failed device and writing the global subsystem status to the status track of the new device; writing the global subsystem status to the second or first data storage device which is still functioning; and updating the global status pointer in said nonvolatile memory.
Claim 5
Dependent Claim 81 words
The method recited in claim 2 wherein if the step of selecting cannot be performed by selecting a first of said two data storage devices in a string attached to a first one of said pair of data storage device controllers and a second of said data storage devices in a string attached to a second one of said pair of data storage device controllers, then performing the step of selecting by selecting the two data storage devices from separate units.
Claim 6
Dependent Claim 89 words
The method recited in claim 4 wherein if the step of selecting cannot be performed by either selecting a first of said two data storage devices in a string attached to a first one of said pair of data storage device controllers and a second of said data storage devices in a string attached to a second one of said pair of data storage device controllers or by selecting the two data storage devices from separate units, then selecting two data storage devices on different spindles of a unit.
Claim 7
Dependent Claim 366 words
A data processing system which retains information about a data storage subsystem of the data processing system across power downs comprising: a host system containing a plurality of channels; a controller attached to at least one of said channels of the host system, said controller including a pair of data storage device controllers and a memory containing vital product data and a joint array structure initialized by said vital product data on initial microprogram load, said vital product data being stored in nonvolatile memory; and a plurality of data storage devices attached to each of said data storage device controllers, each of said data storage devices being of the same type and comprising a plurality of records recorded on a plurality of data tracks and a status track; said controller further including: writing means for writing on said status track of each said data storage device identification and status information for the device; selecting means for selecting two of said data storage devices, said means for writing additionally writing global subsystem status on said status track, said global subsystem status containing information pertaining to all components of the subsystem, including a device number and a subsystem identification number of each data storage device, and a global status pointer containing address information about the selected data storage devices; means, responsive to initialization of the subsystem, for performing an initial microprogram load to establish an operational data path between attaching channels of said data storage device controllers and said data storage devices; reading means for reading the global subsystem status from each of the two selected data storage devices and, when valid and current global subsystem status is identified, said writing means writing said valid and current global subsystem status to the status track of both said data storage devices to insure the status is consistent on both of devices; as data storage devices become available, said reading means reading the device number and subsystem identification number of each data storage device; means for checking said number against the global status to ensure that said data storage devices are correctly attached; and means for notifying the host of available storage paths to said plurality of data storage devices.
Claim 8
Dependent Claim 366 words
A data processing system which retains information about a data storage subsystem of the data processing system across power downs comprising: a host system containing a plurality of channels; a controller attached to at least one of said channels of the host system, said controller including a pair of data storage device controllers and a memory containing vital product data and a joint array structure initialized by said vital product data on initial microprogram load, said vital product data being stored in nonvolatile memory; and a plurality of data storage devices attached to each of said data storage device controllers, each of said data storage devices being of the same type and comprising a plurality of records recorded on a plurality of data tracks and a status track; said controller further including: writing means for writing on said status track of each said data storage device identification and status information for the device; selecting means for selecting two of said data storage devices, said means for writing additionally writing global subsystem status on said status track, said global subsystem status containing information pertaining to all components of the subsystem, including a device number and a subsystem identification number of each data storage device, and a global status pointer containing address information about the selected data storage devices; means, responsive to initialization of the subsystem, for performing an initial microprogram load to establish an operational data path between attaching channels of said data storage device controllers and said data storage devices; reading means for reading the global subsystem status from each of the two selected data storage devices and, when valid and current global subsystem status is identified, said writing means writing said valid and current global subsystem status to the status track of both said data storage devices to insure the status is consistent on both of devices; as data storage devices become available, said reading means reading the device number and subsystem identification number of each data storage device; means for checking said number against the global status to ensure that said data storage devices are correctly attached; and means for notifying the host of available storage paths to said plurality of data storage devices.
Claim 9
Dependent Claim 61 words
The data processing system recited in claim 6 wherein said selecting means selects a first of said two data storage devices in a string attached to a first one of said pair of data storage device controllers and a second of said data storage devices in a string attached to a second one of said pair of data storage device controllers.
Claim 10
Dependent Claim 95 words
The data processing system recited in claim 7 wherein, in response to a failure of one of said first or second data storage devices, said selecting means increments a reconfiguration count in said global status pointer to show that reconfiguration has taken place, selects a new data storage device to replace the failed device and writing the global subsystem status to the status track of the new device, writes the global subsystem status to the second or first data storage device which is still functioning, and updates the global status pointer in said nonvolatile memory.
Claim 11
Dependent Claim 76 words
The data processing system recited in claim 8 wherein if said selecting means cannot select a first of said two data storage devices in a string attached to a first one of said pair of data storage device controllers and a second of said data storage devices in a string attached to a second one of said pair of data storage device controllers, then said selecting means selects the two data storage devices from separate units.
Claim 12
Dependent Claim 90 words
The data processing system recited in claim 9 wherein if said selecting means cannot select either a first of said two data storage devices in a string attached to a first one of said pair of data storage device controllers and a second of said data storage devices in a string attached to a second one of said pair of data storage device controllers or by selecting the two data storage devices from separate units, then said selecting means selects two data storage devices on different spindles of a unit.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1995-09-15 1996-03-16 1996-09-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1999-09-15 2000-03-16 2000-09-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2003-09-15 2004-03-16 2004-09-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag