Object virtualization provides a hierarchy of layers of spaces in which an
object is accessible. The hierarchy of layers may include a physical
layer containing the physical space in which the object is accessible,
and virtual layers containing an arbitrary number of virtual spaces in
which an object is accessible. Each virtual space is isolated from one
another, so that objects accessible in one virtual space may not
necessarily be accessible in another. Interfaces to objects that may be
accessible in spaces in the hierarchy of layers facilitate accessing
objects in the appropriate space. The appropriate space may be determined
from the order of the layers in the hierarchy, alone or in combination
with other information about the object and/or the component accessing
the object. Accessing the objects in the appropriate space advantageously
reduces or eliminates the number of namespace collisions in a computer
system.