man(1) Manual page archive


     VM(4)                                                       VM(4)

     Name
          vm - Virtual memory boxes

     Synopsis
          /b/proc/*/vm

     Description
          The virtual memory box provides a mean to exchange data
          between the application address space and the rest of the
          Plan B system. All processes (but for kernel processes) have
          an inner vm box representing their virtual memory. Depending
          on the architecture of the system, vm may contain some inner
          boxes defined by the kernel while starting up the process;
          for example, b:segs is a box representing the piece of VM
          used to exchange information between the kernel and the user
          code.

          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 infor-
          mation as said in info(2), segments have a starting address
          and a length.  The system can make the segment grow depend-
          ing 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 con-
          tain 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.

     Announces
          None.

     Source
          /src/b/port/vmbox.c and /src/b/*/vm.c.

     See also
          vmboxaddr(3).

     Bugs
          The implementation is not portable to non-hosted environ-
          ments and must change.