System and method for selecting which data copy to read in an information handling system
First Claim
1. A method for accessing data from a memory containing two or more copies of the data, comprising the steps of:
- calculating a number of relocated memory areas between a start address and an end address for each copy of the data, wherein said calculating includes the steps of;
reading one or more bad block entries, wherein each bad block entry contains a bad block address; and
for each bad block address, determining if the bad block address is located between the start address and the end address; and
reading a selected copy of the data, wherein the selected copy has a lowest number of relocated memory areas.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention is a system, method, and computer readable medium for determining which copy of data to access in an information handling system. Since the same data is often stored in more than one storage location (e.g., on more than one physical volume or disk, or in more than one memory area), it is often more efficient to read a particular copy of the data. The present invention determines which copy of the desired data can be read most efficiently (i.e. in the least amount of time), and then accesses that particular copy of the data. In an embodiment of the invention, when a read request is received, each mirrored disk (i.e. copy) containing the requested data is checked to determine which disk contains the fewest relocated blocks within the desired read area. The data is then read from the mirrored disk with the fewest relocated blocks within the read area. The present invention decreases the amount of time it takes to perform I/O operations in an information handling system, as the data copy which is read is the one which can be read in the least amount of time.
49 Citations
13 Claims
-
1. A method for accessing data from a memory containing two or more copies of the data, comprising the steps of:
-
calculating a number of relocated memory areas between a start address and an end address for each copy of the data, wherein said calculating includes the steps of; reading one or more bad block entries, wherein each bad block entry contains a bad block address; and for each bad block address, determining if the bad block address is located between the start address and the end address; and reading a selected copy of the data, wherein the selected copy has a lowest number of relocated memory areas. - View Dependent Claims (2, 3)
-
-
4. An information handling system, comprising:
-
a memory means; two or more copies of data stored in said memory means; means for calculating a number of relocated memory areas between a start address and an end address for each copy of the data, wherein said means for calculating includes; means for reading one or more bad block entries, wherein each bad block entry contains a bad block address; and means for determining if the bad block address is located between the start address and the end address; and means for reading a selected copy of the data, wherein the selected copy has a lowest number of relocated memory areas. - View Dependent Claims (5, 6)
-
-
7. An information handling system, comprising:
-
a logical volume, including a plurality of physical volumes; at least two copies of data stored in said logical volume, wherein each copy is stored on a different physical volume; means for determining a storage location for each copy of the data; means for calculating a number of relocated memory areas between a start address and an end address in each storage location, wherein said means for calculating includes; means for reading one or more bad block entries, wherein each bad block entry contains a bad block address; and means for determining if the bad block address is located between the start address and the end address; and means for reading the data from a selected storage location, wherein the selected storage location contains a lowest calculated number of relocated memory areas. - View Dependent Claims (8, 9, 10)
-
-
11. A computer readable medium for accessing data from a memory containing two or more copies of the data, comprising:
-
means for calculating a number of relocated memory areas between a start address and an end address for each copy of the data, wherein said means for calculating includes; means for reading one or more bad block entries, wherein each bad block entry contains a bad block address; and means for determining if the bad block address is located between the start address and the end address; and means for reading a selected copy of the data, wherein the selected copy has a lowest number of relocated memory areas. - View Dependent Claims (12, 13)
-
Specification