Described are techniques used in a computer system for handling data
operations to storage devices. A switching fabric includes one or more
fast paths for handling lightweight, common data operations and at least
one control path for handling other data operations. A control path
manages one or more fast paths. The fast path and the control path are
utilized in mapping virtual to physical addresses using mapping tables.
The mapping tables include an extent table of one or more entries
corresponding to varying address ranges. The size of an extent may be
changed dynamically in accordance with a corresponding state change of
physical storage. The fast path may cache only portions of the extent
table as needed in accordance with a caching technique. The fast path may
cache a subset of the extent table stored within the control path. A set
of primitives may be used in performing data operations. A locking
mechanism is described for controlling access to data shared by the
control paths.