Patent ID: 8281076

Claim:
A storage system coupled to a first host computer, comprising: a non-volatile medium that stores data; a disk cache that temporarily stores data stored in the non-volatile medium, where the disk cache is divided into a plurality of independent disk cache partitions; a control unit that controls an access to the data stored in the non-volatile medium; and a memory unit that stores information used by the control unit, including consistency control information setting read command permitted for each of the disk cache partitions; wherein the memory unit stores: a first information including a track information to indicate where the data is stored in the non-volatile medium and segment information to indicate segments where the data corresponding to the track information is stored in the disk cache, in a case where the disk cache temporarily stores the data, a second information indicating the number of cache partitions to which each of the segments is allocated, and wherein the control unit is configured to determine whether or not to execute the read command for a given disk cache partition, by referring to the consistency control information setting read command permitted for each of the disk cache partitions, in a case where data corresponded to the read command is found to exist in a segment which is allocated to first disk cache partition provided to the first host computer, the control unit accesses to the data corresponded to the read command for the found segment; in a case where data corresponded to the read command is found to exist in a segment which is not allocated to the first disk cache partition provided to the first host computer and is allocated to a second disk cache partition provided to a second host computer, the control unit co-allocates the found segment to the first disk cache partition without copying the data to the first disk cache partition in order to avoid the data are redundantly stored in both the first disk cache partition and the second disk cache partition, and accesses to the data corresponded to the read command for the found segment.