1. A method comprising: allocating a first portion of a real storage device (RSD) to store data, wherein the first portion is divided into a plurality of blocks of memory; allocating a second portion of the RSD to store a plurality of reference counters that correspond to the plurality of blocks of memory; mapping a block of memory in the RSD to a corresponding block of memory in a virtual storage device (VSD); and incrementing a value stored in a reference counter associated with the block of memory in the RSD.