摘要:
A hybrid system is provided. The system includes a computing device implementing a first application execution environment (AEE) and a second AEE. The first AEE is configured to be isolated from the second AEE. The first software application associated with the first AEE is configured to be processed on the first AEE such that the first software application is denied direct access to the second AEE. A second software application associated with the second AEE is configured to be processed on the second AEE such that the second software application is denied direct access to the first AEE.
摘要:
A hybrid system is provided. The system includes a computing device implementing a first application execution environment (AEE) and a second AEE. The first AEE is configured to be isolated from the second AEE. The first software application associated with the first AEE is configured to be processed on the first AEE such that the first software application is denied direct access to the second AEE. A second software application associated with the second AEE is configured to be processed on the second AEE such that the second software application is denied direct access to the first AEE.
摘要:
A hybrid system is provided. The system includes a computing device implementing a first application execution environment (AEE) and a second AEE. The first AEE is configured to be isolated from the second AEE. The first software application associated with the first AEE is configured to be processed on the first AEE such that the first software application is denied direct access to the second AEE. A second software application associated with the second AEE is configured to be processed on the second AEE such that the second software application is denied direct access to the first AEE.
摘要:
Methods and apparatus for reducing the number of runtime checks performed during the execution of a virtual machine. According to one aspect of the present invention, a computer system includes a preloader, a compiler, and a virtual machine. The preloader is arranged to determine whether a bytecode makes an active reference to a class which requires an execution of a static initializer, and is also arranged to determine if the class has a superclass which requires the execution of the static initializer. The compiler is arranged to accept a source file generated by the preloader as input and to produce an object file, and the virtual machine is arranged to execute the object file.
摘要:
The disclosed system represents an improvement over conventional systems for initializing static arrays by reducing the amount of code executed by the virtual machine to statically initialize an array. To realize this reduction, when consolidating class files, the preloader identifies all methods and play executes these methods to determine the static initialization performed by them. The preloader then creates an expression indicating the static initialization performed by the method and stores this expression in the .mclass file, replacing the method. As such, the code of the method, containing many instructions, is replaced by a single expression instructing the virtual machine to perform static initialization, thus saving a significant amount of memory. The virtual machine is modified to recognize this expression and perform the appropriate static initialization of an array.
摘要:
Methods and apparatus for creating compacted method signatures from method signature representations in Java™ class files are disclosed. The use of compacted signatures reduces the amount of memory space occupied by the signatures and, further, improve the efficiency with which a virtual machine may operate. According to one aspect of the present invention, a method a method for creating a compact representation of a method signature using a virtual machine includes creating 4-bit representations for each of a first parameter, a separator, and a return type included in the method signature. Once the 4-bit representation are created, the representations are packed into a word. In one embodiment, the word is a 32-bit word. In such an embodiment, the 32-bit word may be a 32-bit integer.
摘要:
A method of cross-compiling computer programs includes the step of extracting constants from an inheriting computer program written in a first computer language. The extracted constants refer to a generating computer program written in a second computer language. A new program in the second computer language is then created using the constants. The new program is then compiled for a target computer to ascertain compiled constant values. The compiled constant values are then substituted into the inheriting computer program to produce a final inheriting computer program.