Data storage systems
First Claim
1. An apparatus for use in a data storage subsystem comprising:
- a volatile memory;
a nonvolatile memory;
a temporary power supply for supplying temporary power to the apparatus after interruption of a main power supply to the apparatus;
means for detecting an interruption in the power supply to the volatile memory;
means for, in the event of such detection, writing data stored in the volatile memory to the nonvolatile memory using power supplied by the temporary power supply;
means for determining the state of the temporary power supply; and
means for determining the amount of data stored in the volatile memory that can be written to the nonvolatile memory using power supplied by the temporary power supply on the basis of the determined state of the temporary power supply.
1 Assignment
0 Petitions
Accused Products
Abstract
storage adapter for use in a data storage subsystem includes a controlling processor, a volatile memory, and a nonvolatile memory “dump device.” The storage adapter also includes a battery that can be used to provide sufficient power to the storage adapter to allow data from the volatile memory to be written to the nonvolatile memory of the storage adapter under the control of the processor in the event of an interruption or failure in the main power supply to the storage adapter, i.e. to preserve data stored in the volatile memory in that event. The processor uses the current state of charge of the battery to determine the amount of data that can be “dumped” to the nonvolatile dump device using the battery in its current state. The processor then uses that determined amount of data to control the storage of data in the volatile memory.
60 Citations
41 Claims
-
1. An apparatus for use in a data storage subsystem comprising:
-
a volatile memory;
a nonvolatile memory;
a temporary power supply for supplying temporary power to the apparatus after interruption of a main power supply to the apparatus;
means for detecting an interruption in the power supply to the volatile memory;
means for, in the event of such detection, writing data stored in the volatile memory to the nonvolatile memory using power supplied by the temporary power supply;
means for determining the state of the temporary power supply; and
means for determining the amount of data stored in the volatile memory that can be written to the nonvolatile memory using power supplied by the temporary power supply on the basis of the determined state of the temporary power supply. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An apparatus for a data storage subsystem comprising:
-
a volatile memory;
a nonvolatile memory;
a temporary power supply for temporarily supplying power to the apparatus in the event of a main power supply interruption;
means for determining the state of the temporary power supply;
means for denoting data stored in the volatile memory as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of the main power supply interruption; and
means for determining a permitted amount of data that can be stored in the volatile memory and that can be denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption on the basis of the determined state of the temporary power supply. - View Dependent Claims (8, 9)
-
-
10. An apparatus for a data storage subsystem, the apparatus comprising:
-
a volatile memory;
a nonvolatile memory;
a temporary power supply for temporarily supplying power to the apparatus in the event of a main power supply interruption;
means for determining the state of the temporary power supply;
means for denoting data stored in the volatile memory as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of the main power supply interruption;
means for setting a permitted amount of data stored in the volatile memory that can be denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption on the basis of the determined state of the temporary power supply;
means for comparing the amount of data stored in the volatile memory that is denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption with the set permitted amount of such data; and
means for, where the amount of stored data that is denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption is found to exceed the permitted amount of such data that has been set, instructing a firmware client component of the storage subsystem to reduce the amount of data it has denoted in the volatile memory as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption. - View Dependent Claims (11)
-
-
12. An apparatus for a data storage subsystem comprising:
-
a volatile memory;
a nonvolatile memory;
a power supply for temporarily supplying power to the apparatus in the event of a main power supply interruption;
means for determining the state of the temporary power supply;
means for denoting data stored in the volatile memory as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of the main power supply interruption;
means for setting a permitted amount of data stored in the volatile memory that can be denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption on the basis of the determined state of the temporary power supply;
means for comparing the amount of data stored in the volatile memory that is denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption with the set permitted amount of such data; and
means for, where the amount of stored data that is denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption is found to exceed the permitted amount of such data that has been set, preventing the writing of any new data stored in the volatile memory that is denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption, while the amount of data stored in the volatile memory that is denoted as being data that should be written to the nonvolatile memory using power supplied by the temporary power supply in the event of a power supply interruption exceeds the set permitted amount of such data. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A method of operating a data storage subsystem comprising a volatile memory, a nonvolatile memory, and a temporary power supply for supplying temporary power to the storage subsystem after the interruption of the power supply to the subsystem, in which in the event of the detection of an interruption of the power supply to the volatile memory, data from the volatile memory is written to the nonvolatile memory using power supplied from the temporary power supply, the method comprising:
-
determining the state of the temporary power supply; and
determining the amount of data stored in the volatile memory that can be written to the nonvolatile memory using power supplied by the temporary power supply on the basis of the determined state of the temporary power supply. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A computer program product, residing on a computer usable medium, for use with operating a data storage subsystem comprising a volatile memory, a nonvolatile memory, and a temporary power supply for supplying temporary power to the storage subsystem after the interruption of the power supply to the subsystem, in which in the event of the detection of an interruption of the power supply to the volatile memory, data from the volatile memory is written to the nonvolatile memory using power supplied from the temporary power supply, the computer program product comprising:
-
program code for determining the state of the temporary power supply; and
program code for determining the amount of data stored in the volatile memory that can be written to the nonvolatile memory using power supplied by the temporary power supply on the basis of the determined state of the temporary power supply. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A system comprising:
-
a host computer;
a hard drive; and
a storage adapter logically oriented between the host computer and the hard drive, the storage adapter composed of;
a controlling processor, a volatile memory, a temporary power supply, and a non-volatile memory, wherein the storage adapter stores in the volatile memory a mirror image of data being sent from the host computer to the hard drive, and wherein, in response to the host computer experiencing a power interrupt, the controlling processor controls the writing of the mirror image from the volatile memory to the non-volatile memory using power from the temporary power supply. - View Dependent Claims (39, 40, 41)
-
Specification