| CPC G06F 13/1663 (2013.01) [G06F 12/0868 (2013.01); G06F 13/1668 (2013.01)] | 6 Claims |

|
1. A storage apparatus that is communicably connected to another apparatus and executes a data input-output process in a storage device in response to a data input-output request received from the another apparatus, the storage apparatus comprising:
a first controller including a first memory;
a second controller including a second memory and being communicably connected to the first controller; and
a memory module that is communicably connected to the first controller and the second controller and includes a third memory, wherein
the first memory stores
drive control information that is information for managing a correspondence between a logical address and a physical address, the logical address being information indicating a location of data handled by the another apparatus in the data input-output process, the physical address being information indicating a location of the data in the storage device,
first cache data in the data input-output process, and
first cache control information that is information for managing a correspondence between the logical address of the first cache data and a cache address that is information indicating a location of the first cache data in the first memory,
the second memory stores
the drive control information,
second cache data in the data input-output process, and
second cache control information that is information for managing a correspondence between the logical address of the second cache data and a cache address that is information indicating a location of the second cache data in the first memory,
the third memory stores
the first cache data where a correspondence between a logical address and a cache address is managed by the first cache control information, and
the second cache data where a correspondence between a logical address and a cache address is managed by the second cache control information, and wherein
when the first controller is blocked,
the first cache data stored in the third memory is deleted,
second dirty cache data that is dirty cache data of the second cache data stored in the second memory is transferred as third dirty cache data to the third memory,
third cache control information is generated and stored in the third memory, the third cache control information being information for managing a correspondence between the logical address of the second dirty cache data and a cache address that is information indicating a location of the second dirty cache data in the third memory,
the second dirty cache data as the dirty cache data of the second cache data stored in the third memory before the blockage is transferred to the second memory,
a correspondence between the logical address of the second dirty cache data and a cache address that is information indicating a location of the second dirty cache data in the second memory is reflected in the second cache control information,
the second dirty cache data stored in the second memory is transferred to the third memory,
a correspondence between the logical address of the second dirty cache data and a cache address that is information indicating the location of the second dirty cache data in the third memory is reflected in the third cache control information, and
the drive control information stored in the second memory is transferred to the third memory.
|