Claims
- 1. A system for implementing isolated application execution environments on a computing device, the system comprising:
means for providing the computing device to include a first environment and a second environment, the first environment configured to have greater capabilities than the second environment; means for initiating execution of a second software application on the second environment; and means for denying the second software application direct access to the first environment while the second software application is being executed.
- 2. A hybrid system, the system comprising:
a computing device implementing a first application execution environment (AEE) and a second AEE, the first AEE configured to be isolated from the second AEE, wherein a 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, and further wherein 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.
- 3. A hybrid system as recited in claim 2, wherein a first capability of the first AEE is configured to be greater than a second capability of the second AEE.
- 4. A hybrid system as recited in claim 3, wherein the second AEE is denied direct access to the first AEE by rejecting a second AEE request to directly access a first AEE-only capability.
- 5. A hybrid system as recited in claim 3, wherein a first common capability is included in the first capability and a second common capability is included in the second capability.
- 6. A hybrid system as recited in claim 5, wherein the second AEE is denied direct access to the first AEE by rejecting a second AEE request to directly access an additional element of the first common capability, the additional element of the first common capability not being included in the second common capability.
- 7. A hybrid system as recited in claim 3, wherein the first capability of the first AEE is configured to be available to the second software application configured to be processed on the second AEE.
- 8. A hybrid system as recited in claim 3, wherein the first AEE and the second AEE are configured to share an implementation.
- 9. A system for maintaining a multi-application execution environment, the system comprising:
a computing device implementing,
an alpha environment configured to have an alpha capability; and a plurality of beta environments, each beta environment of the plurality of beta environments configured to have an associated beta capability, the alpha environment configured to be isolated from each beta environment of the plurality of beta environments, wherein an alpha software application associated with the alpha environment is configured to be processed on the alpha environment such that the alpha software application is denied direct access to each beta environment of the plurality of beta environments, and further wherein each beta software application associated with each beta environment of the plurality of beta environments is configured to be processed on the associated beta environment of the plurality of beta environments such that the beta software application is denied direct access to the alpha environment, and further wherein each beta software application of each beta environment of the plurality of beta environments is configured to be denied direct access to non-associated beta environments.
- 10. A multi-environment hybrid system as recited in claim 9, wherein an alpha capability of the alpha environment is configured to be greater than a beta capability associated with each beta environment of the plurality of beta environments.
- 11. A multi-environment hybrid system as recited in claim 10, wherein each beta environment of the plurality of beta environments is denied direct access to the alpha environment by rejecting each beta environment request to directly access an alpha environment-only capability.
- 12. A multi-environment hybrid system as recited in claim 10, wherein a beta common capability is included in the beta capability of a beta environment of the plurality of beta environments and an alpha common capability is included in the alpha capability.
- 13. A multi-environment hybrid system as recited in claim 12, wherein the beta environment of the plurality of beta environments is denied direct access to the alpha environment by rejecting a beta environment request to directly access an additional element of the alpha common capability, the additional element of the alpha common capability not being included in the beta common capability.
- 14. A multi-environment hybrid system as recited in claim 10, wherein the alpha capability of the alpha environment is configured to be available to the beta software application configured to be processed on each beta environment of the plurality of beta environments.
- 15. A multi-environment hybrid system as recited in claim 10, wherein the alpha environment and each beta environment of the plurality of beta environments are configured to share program instructions and implementation.
- 16. A multi-environment hybrid system as recited in claim 9, wherein the computing device is one of a general-purpose computer, special purpose computer, a network computer, and a mobile device.
- 17. A method for implementing isolated application execution environments on a computing device, the method comprising:
providing the computing device including a first environment and a second environment, the first environment configured to have greater capabilities than the second environment; initiating execution of a second software application on the second environment; and denying the second software application direct access to the first environment while the second software application is being executed.
- 18. A method as recited in claim 17, further comprising:
initiating execution of a first software application on the first environment; and denying the first software application direct access to the second environment while the first software application is being executed.
- 19. A method as recited in claim 17, wherein first capabilities of the first environment is configured to be greater than second capabilities of the second environment.
- 20. A method as recited in claim 19, wherein the second environment is denied direct access to the first environment by rejecting a second environment request to directly access a first environment-only capability.
- 21. A method as recited in claim 19, wherein a first common capability is included in the first capabilities and a second common capability is included in the second capabilities.
- 22. A method as recited in claim 21, wherein the second environment is denied direct access to the first environment by rejecting a second environment request to directly access an additional element of the first common capability, the additional element of the first common capability not being included in the second common capability.
- 23. A method as recited in claim 18, the method further comprising:
sharing a single implementation between the first environment and the second environment.
- 24. A method as recited in claim 17, wherein the first environment is a Connected Device Configuration (CDC) environment.
- 25. A method as recited in claim 17, wherein the second environment is a Mobile Information Device Profile (MIDP) environment.
- 26. A method for a Mobile Information Device Profile (MIDP) application execution environment (environment) and a Connected Device Configuration (CDC) environment to co-exist on a computing device, the method comprising:
providing the computing device including the MIDP environment and the CDC environment, the CDC environment configured to have greater capabilities than the MIDP environment; executing a MIDlet on the MIDP environment; and denying the MIDlet direct access to the CDC environment while the MIDlet is being executed.
- 27. A method as recited in claim 26, further comprising:
executing a CDC application on the CDC environment; and denying the CDC application direct access to the MIDP environment while the CDC application is being executed.
- 28. A method as recited in claim 26, wherein the MIDlet is denied direct access to the CDC by rejecting a MIDlet request to load a CDC-only capability.
- 29. A method as recited in claim 28, wherein the CDC-only capability is a class.
- 30. A method as recited in claim 26, wherein a MIDP common capability is included in the MIDP and a CDC common capability is included in the CDC.
- 31. A method as recited in claim 30, wherein the MIDP common capability and the CDC common capability are a common class.
- 32. A method as recited in claim 31, wherein the MIDlet request to execute a member of the common class not included in the MIDP common class is rejected.
- 33. A method as recited in claim 32, wherein if the member of the common class requested by the MIDlet includes byte codes forbidden to the MIDlet, loading the request to load the common class is rejected.
- 34. A method as recited in claim 31, wherein a MIDlet request for a member of the common class is modified if a semantic of the requested member is not equivalent to a semantic of the member as included in the MIDP class.
- 35. A method as recited in claim 26, wherein capabilities of the CDC environment are configured to be available to the MIDlet being executed on the MIDP environment.
- 36. A method as recited in claim 26 wherein the MIDP environment and the CDC environment are configured to share an implementation.
- 37. A method as recited in claim 27, wherein the operation of executing the MIDlet on the MIDP environment includes,
issuing a request to load a class; and loading the class by a classloader for the MIDlet being executed.
- 38. A method as recited in claim 26, further comprising:
delegating the operation of loading the class to the classloader configured to load the MIDP class library if the classloader for the MIDlet is incapable of loading the class.
- 39. A method as recited in claim 26, the method further comprising:
sharing a single implementation between the MIDP environment and the CDC environment.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority from U.S. Provisional Patent Application No. 60/483,543, filed on Jun. 27, 2003, and entitled “HYBRID SYSTEM IMPLEMENTING ISOLATED AND CO-EXISTING PROFILES AND METHODS FOR IMPLEMENTING THE SAME” by Fresko et al., which is incorporated herein by reference in its entirety.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60483543 |
Jun 2003 |
US |