Patent ID: 8104085
Filing Date: 2012-01-24
Classification: G06F

Abstract:
1. A system for implementing isolated application execution environments on a computing device, the system comprising: a virtual machine installed on the computing device, the virtual machine including an instruction set compiled to a processor of the computing device, the virtual machine defined to execute applications through an interpreted language such that the applications need not be compiled to the processor of the computing device; a first execution environment and a second execution environment both installed on the computing device and both defined to exist within the virtual machine, the first execution environment configured to have greater capabilities than the second execution environment, and wherein the first and second execution environments are defined to execute software applications independently from each other within the virtual machine, wherein each of the first and second execution environments is a respective object-oriented execution environment in which respective hierarchies of classes and methods are defined to provide program execution by the virtual machine when called upon, wherein the first execution environment includes a first class loader for loading classes of the first execution environment within the virtual machine, and wherein the first class loader is only aware of classes associated with the first execution environment, wherein the second execution environment includes a second class loader for loading classes of the second execution environment within the virtual machine, and wherein the second class loader is aware of classes associated with both the first and second execution environments, wherein the second class loader is defined to deny direct access to classes of the first execution environment by any software application being executed within the second execution environment within the virtual machine, and wherein the second class loader is defined to allow indirect access to classes of the first execution environment by authorized software applications executed within the second execution environment within the virtual machine through loading of mediating class within the second execution environment.