Patent ID: 8015219

Claim:
A computer system comprising: a computer that provides a plurality of virtual storage areas for reading and writing data; and a storage device; the computer including: a first interface coupled to the storage device; a first processor coupled to the first interface; and a first memory coupled to the first processor; the storage device including: a second interface coupled to the computer; a second processor coupled to the second interface, and providing an original data volume that stores original data shared by the virtual storage areas, and a differential data volume that stores differential data of each of the virtual storage areas from the original data, to the computer, and a second memory connected to the second processor, wherein the first memory stores storage area management information that manages to provide the virtual storage areas by using the original data volume and the differential data volume, and a storing flag that sets the original data volume or the differential data volume as an update data destination, wherein when the first processor receives an update request to one of the virtual storage area and the storing flag is set to the original data volume, the first processor specifies a first area of the original data volume, the first area corresponding to the one of the virtual storage area, to update data stored in the specified first area, wherein when the first processor receives the update request and the storing flag is set to the differential data volume, the first processor determines whether or not a second area corresponding to the first area is allocated to the differential data volume in accordance with the storage area management information, when the second area is allocated to the differential data volume, the first processor updates data stored in the second area, when the second area is not allocated to the differential data volume, the first processor newly allocates the second area to the differential data volume to store data requested by the update request.