Methods and apparatus for implementing a virtual machine that supports the
execution of more than one application per virtual machine process are described.
According to one aspect of the present invention, a computing system includes a
processor, a memory, and a virtual machine that is in communication with the processor.
The virtual machine is arranged to enable one or more jobs to run on the virtual
machine, and is further arranged to create a heap in the memory for each job that
runs on the virtual machine. In one embodiment, the virtual machine includes a
jobs manager, a class manager, and a heap manager. In such an embodiment, the heap
manager manages substantially all heaps in the memory that are created by the virtual machine.