Patent ID: 7725651

Claim:
A storage system comprising a controller receiving a plurality of write commands each including respective data of a plurality of data targeted to a corresponding storage area of a plurality of storage areas of a primary volume and controlling storage of the plurality of data of the plurality of write commands to the corresponding storage areas of the primary volume targeted by the plurality of write commands; and a plurality of disk drives being managed by the controller according to a Redundant Array of Independent/Inexpensive Disks (RAID) system and providing the primary volume and a pool volume, the pool volume storing backup data of the primary volume and providing a secondary volume as a virtual volume mapping the backup data, wherein the controller manages the primary volume, the secondary volume, the pool volume and a difference bitmap, the pool volume storing a plurality of difference data sets having a corresponding difference data set for each write command of the plurality of write commands, each difference data set including the storage area of the primary volume targeted by the corresponding write command and respective data acquired from the targeted storage area prior to storage of the respective data of the corresponding write command to the targeted storage area, the difference bitmap indicating whether respective data from each of the plurality of storage areas of the primary volume has been stored to the pool volume since completion of a most recent prior backup of the primary volume to the pool volume, wherein the controller generates a plurality of simulated I/O commands each targeting a corresponding storage area of the plurality storage areas of the primary volume from which, according to the difference bitmap, the respective data has not been stored to the pool volume since completion of the most recent prior backup of the primary volume to the pool volume, acquires the respective data from each corresponding storage area of the plurality of storage areas targeted by the plurality of simulated I/O commands, and controls storage of a plurality of simulated difference data sets having a corresponding simulated difference data set for each simulated I/O command of the plurality of simulated I/O commands in the pool volume, each simulated difference data set including the storage area of the primary volume targeted by the corresponding simulated I/O command and the respective data acquired from the targeted storage area.