Patent ID: 7788532

Claim:
A storage controller for storing data that is used by an external device, comprising: a first storage area that holds storage contents obtained at a latest point; a second storage area that holds storage contents obtained at a base point positioned before the latest point; an update history management section that manages an update history of the first storage area which is generated by an update request from the external device; and a controller that restores the storage contents of the first storage area that are obtained at a restoration point included in a period between the base point and the latest point, wherein the controller (1) detects a first update area that is updated during a first period between the restoration point and the latest point, a second update area that is updated during a second period between the base point and the restoration point, and a third update area that is common to the first update area and the second update area, (2) uses the storage contents of the second storage area with respect to the first update area, uses the storage contents of the first storage area with respect to the second update area, uses the storage contents of the second storage area and an update history obtained within the second period with respect to a third storage area, and uses the storage contents of either one of the first and second storage areas with respect to an unupdate area which is not updated during both the first period and the second period, and thereby (4) restores the storage contents of the first storage area that are obtained at the restoration point.