A modified JAVA() execution environment is described. The modified environment
supports multiple JAVA() applications on a single JAVA() virtual
machine (JVM). This modified environment provides significant memory and performance
improvements when running multiple applications on a single computer system. Notably,
no changes are needed to the source code of an application to take advantage of
the modified environment. Further, embodiments of the invention may support shared
access to base classes through the use of overlays. Additionally, system resource
permissions can be enforced based upon the user permissions associated with a running
application. Notably, embodiments of the invention allow multiple applications
to share the abstract window toolkit (AWT) on a per display basis. Since only a
single garbage collection routine is necessary, applications see improved performance
relative to running in different JVMs. Further, the shared base classes eliminate
significant memory overhead.