While in the born state, other processes may create VM boxes for a given process. Otherwise, only the process containing the vm box is allowed to create inner boxes on it.
Boxes created (with make(2) or by the system) under vm are segments on that address space. In addition to status information as said in info(2), segments have a starting address and a length. The system can make the segment grow depending on the information copied to it. The library function vmboxaddr(3), can be used to gain access to the memory of a segment box.
Besides segment boxes, vm understands address ranges as names. This means that any vm box can be considered to contain all feasible names of the form start:limit, where start and limit are hexadecimal numbers representing
virtual addresses. Thus, inner boxes named start:limit can be used to operate on portions of an address space given their boundaries; see vmboxaddr(3) for examples.