A storage system permits virtual storage of user data by implementing a
logical disk mapping structure that provides access to user data stored
on physical storage media and methods for generating point-in-time
copies, or snapshots, of logical disks. A snapshot logical disk is
referred to as a predecessor logical disk and the original logical disk
is referred to as a successor logical disk. Creating a snapshot involves
creating predecessor logical disk mapping data structures and populating
the data structures with metadata that maps the predecessor logical disk
to the user data stored on physical media. Logical disks include metadata
that indicates whether user information is shared between logical disks.
Multiple generations of snapshots may be created, and user data may be
shared between these generations. Methods are disclosed for maintaining
data accuracy when write I/O operations are directed to a logical disk.