# US 10,311,912 B1 · Simulating aged storage systems

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,311,912 B1
- Document ID: US10311912B1
- Status: Granted
- Kind: B1
- Application number: 15/883,577
- Filed: 2018-01-30
- Granted: 2019-06-04
- Earliest claimed: 2018-01-30
- Assignees: EMC IP Holding Company LLC
- Applicants: EMC IP Holding Company LLC
- Inventors: Jayasekhar Konduru; Ashwani Mujoo; Mahesh Kamat
- Web page: https://patentgrep.com/patent/US10311912B1

## CPC

- G11B 20/182: {using test patterns}
- G11B 20/1217: {on discs}
- G11B 27/36: Monitoring, i.e. supervising the progress of recording or reproducing {(for digital recording G11B20/00 and s.gr.; for monitoring, testing or measuring of TV recorders of the type covered by H04N5/76 and subgroups, see H04N17/06)}
- G11B: INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER (recording measured values in a way that does not require playback through a transducer G01D9/00; recording or playback apparatus using mechanically marked tape, e.g. punched paper tape, or using unit records, e.g. punched or magnetically marked cards G06K; transferring data from one type of record carrier to another G06K1/18; circuits for coupling output of reproducer to radio receiver H04B1/20; gramophone pick-ups or like acoustic electromechanical transducers or circuits therefor H04R)

## Abstract

Aged disk storage systems are simulated for testing and evaluation purposes by writing test data to a clean disk using a data allocation policy that writes the test data to mimic the data layout and data distribution of the aged disk to be simulated. The test data may be written using a sequential data block allocation on the disk where blocks are written sequentially to the fresh, or by using either a fixed or a random jump allocation policy where test data is written in data blocks spaced from each other by either a fixed increment or spaced from each other randomly.

## Claims

### Claim 1

A method of simulating a storage system disk having multiple data deletions and multiple data insertions, comprising:
determining a physical data layout and data distribution across said disk to be simulated resulting from said multiple data deletions and insertions;
defining a sequential data block allocation policy for writing data blocks to sequential physical locations on a fresh disk to correspond to the determined physical data layout and data distribution of said disk to be simulated; and
writing test data to the fresh disk in accordance with said block allocation policy by writing said data blocks of said test data in sequential numerical order to contiguous physical locations on said fresh disk beginning in an outer circumferential disk track to simulate said physical data layout and said data distribution of said disk to be simulated.

### Claim 2

A method of simulating a storage system disk having multiple data deletions and multiple data insertions, comprising:
determining a physical data layout and data distribution across said disk to be simulated resulting from said multiple data deletions and insertions;
defining a block jump allocation policy for writing data blocks to selected physical locations on a fresh disk to correspond to the determined physical data layout and data distribution of said disk to be simulated; and
writing test data to the fresh disk in accordance with said block jump allocation policy by writing said data blocks of test data to physical locations on said fresh disk that are spaced apart by increments of physical block locations.

### Claim 3 (depends on 2)

The method of claim 2, wherein said writing comprises beginning writing of said data blocks of test data at an outer track of said fresh disk, and continuing writing said data blocks of test data progressively inwardly from said outer track to inner tracks, and, upon writing an innermost track, wrapping back to said outer track and continuing said writing of test data in free locations of said tracks.

### Claim 4 (depends on 2)

The method of claim 2 further comprising defining a high watermark parameter corresponding to a percentage of the total space of the disk which is to be used, and said wrapping comprises wrapping back to said outer track when said writing of test data reaches said high watermark.

### Claim 5 (depends on 2)

The method of claim 2, wherein said jump allocation policy comprises spacing apart data blocks by a fixed increment of N, such that data blocks are written in every Nth physical location.

### Claim 6 (depends on 2)

The method of claim 2, wherein said defining comprising defining a random jump allocation, and said writing of test data comprises writing data blocks of test data to randomly spaced physical locations on said fresh disk.

### Claim 7 (depends on 6)

The method of claim 6, wherein said writing comprises beginning writing said data blocks to randomly spaced locations in an outer track of said fresh disk, and continuing writing data blocks progressively inwardly from said outer track to inner tracks of said fresh disk, and, upon writing an innermost track, wrapping back to said outermost track and continuing said writing of data blocks to randomly spaced free locations of said tracks.

### Claim 8 (depends on 6)

The method of claim 6 further comprising defining a high watermark parameter corresponding to a percentage of the total capacity of the disk which is to be written, and said wrapping comprises wrapping back to said outer track when said writing reaches said high watermark.

### Claim 9

A computer readable product comprising a non-transitory medium embodying executable instructions for controlling a processor to perform a method of simulating a storage system disk having multiple data deletions and multiple data insertions, comprising:
determining a physical data layout and data distribution across said disk to be simulated resulting from said multiple data deletions and insertions;
defining a sequential data block allocation policy for writing data blocks to sequential physical locations on a fresh disk to correspond to the determined physical data layout and data distribution of said disk to be simulated; and
writing test data to the fresh disk in accordance with said block allocation policy by writing said data blocks of said test data in sequential numerical order to contiguous physical locations on said fresh disk beginning in an outer circumferential disk track to simulate said physical data layout and said data distribution of said disk to be simulated.

### Claim 10

A computer readable product comprising a non-transitory medium embodying executable instructions for controlling a processor to perform a method of simulating a storage system disk having multiple data deletions and multiple data insertions, comprising:
determining a physical data layout and data distribution across said disk to be simulated resulting from said multiple data deletions and insertions;
defining a block jump allocation policy for writing data blocks to selected physical locations on a fresh disk to correspond to the determined physical data layout and data distribution of said disk to be simulated; and
writing test data to the fresh disk in accordance with said block jump allocation policy by writing said data blocks of test data to physical locations on said fresh disk that are spaced apart by increments of physical block locations.

### Claim 11 (depends on 10)

The computer product of claim 10, wherein said writing comprises beginning writing of said data blocks of test data at an outer track of said fresh disk, and continuing writing said data blocks of test data progressively inwardly from said outer track to inner tracks, and, upon writing an innermost track, wrapping back to said outer track and continuing said writing of test data in free locations of said tracks.

### Claim 12 (depends on 10)

The computer product of claim 10 further comprising defining a high watermark parameter corresponding to a percentage of the total space of the disk which is to be used, and said wrapping comprises wrapping back to said outer track when said writing of test data reaches said high watermark.

### Claim 13 (depends on 10)

The computer product of claim 10, wherein said jump allocation policy comprises spacing data blocks by a fixed increment of N, such that data blocks are written in every Nth physical location.

### Claim 14 (depends on 10)

The computer product of claim 10, wherein said defining comprising defining a random jump allocation, and said writing of test data comprises writing data blocks of test data to randomly spaced physical locations on said fresh disk.

### Claim 15 (depends on 14)

The computer product of claim 14, wherein said writing comprises beginning writing said data blocks to randomly spaced locations in an outer track of said fresh disk, and continuing writing data blocks progressively inwardly from said outer track to inner tracks of said fresh disk, and, upon writing an innermost track, wrapping back to said outermost track and continuing said writing of data blocks to randomly spaced free locations of said tracks.

### Claim 16 (depends on 15)

The computer product of claim 15 further comprising defining a high watermark parameter corresponding to a percentage of the total capacity of the disk which is to be written, and said wrapping comprises wrapping back to said outer track when said writing reaches said high watermark.
