IP Library Granted Patent US 10,606,634
Granted Patent B1
US 10,606,634 · App. 16/278,659 · Granted Mar 31, 2020

System and method for application isolation

Inventor: Allan Havemose (Arroyo Grande, CA)
Assignee: OPEN INVENTION NETWORK LLC
G06F9/46G06F8/61G06F8/62G06F9/455G06F9/50G06F11/008
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,606,634
App. No.
16/278,659
Granted
Mar 31, 2020
Kind
B1
Abstract

A system, method, and computer readable medium for providing application isolation to one or more applications and their associated resources. The system may include one or more isolated environments including application files and executables, and one or more interception layers intercepting access to system resources and interfaces. Further, the system may include an interception database maintaining mapping between the system resources inside the one or more isolated environments and outside, and a host operating system. The one or more applications may be isolated from other applications and the host operating system while running within the one or more isolated environments.

Claims (32)

1. A system, comprising:

one or more central processing units;

one or more isolated environments including one or more applications; and

one or more resource mappings between resources as requested by the one or more applications and the corresponding resources inside said isolated environments;

wherein the one or more central processing units and the one or more isolated environments are configured to interact with each other;

wherein a resource mapping for an application is created or updated during one or more of installing said application in an isolated environment, running said application in said isolated environment, or accessing a resource corresponding to said resource mapping; and

wherein a resource mapping for an application is removed or updated during one or more of uninstalling said application, deleting a resource corresponding to said resource mapping, archiving at least one of the one or more isolated environments, or copying an isolated environment to a new location.

2. The system according to claim 1 , wherein the one or more applications are isolated from other applications and a host operating system while the one or more applications run within the one or more isolated environments.

3. The system according to claim 1 comprising one or more interception layers configured to intercept access to host operating system resources and host operating system interfaces.

4. The system according to claim 3 , wherein the one or more interception layers intercept calls by the one or more applications to the host operating system and system libraries.

5. The system according to claim 1 , wherein updates to the one or more isolated environments occur as the one or more applications use additional resources.

6. The system according to claim 1 , wherein said one or more resource mappings are maintained in an interception database.

7. The system according to claim 1 , wherein the one or more isolated environments are stored on a local storage.

8. The system according to claim 1 , wherein the one or more isolated environments are stored on a networked storage and the one or more applications are delivered over a network.

9. The system according to claim 1 , wherein each of the one or more applications is installed into its own isolated environment.

10. The system according to claim 1 , wherein two or more applications are installed into a shared isolated environment.

11. The system according to claim 10 , wherein the two or more applications share resources inside the shared isolated environment.

12. The system according to claim 1 , wherein two or more applications are installed into separate isolated environments and the one or more applications run concurrently in the separate isolated environments.

13. The system according to claim 1 , wherein a first application of the one or more applications is installed twice into separate isolated environments, and the separate isolated environments run concurrently and independently.

14. A method, comprising:

creating one or more isolated environments during installation of one or more applications;

maintaining a mapping between a resource as requested by the one or more applications and the corresponding resource inside said isolated environments, wherein said mapping is created or updated during one or more of installing an application in an isolated environment, running said application in said isolated environment, or accessing a resource corresponding to said resource mapping; and

uninstalling an application of the one or more applications, wherein said uninstalling comprises one or more of removing at least one of said mappings, uninstalling said application, and removing isolated environment information from storage.

15. The method of claim 14 comprising intercepting access to system resources and interfaces at one or more interception layers.

16. The method of claim 14 comprising updating the one or more isolated environments as the one or more applications use additional resources.

17. The method 14 comprising isolating the one or more applications from other applications and a host operating system while running within the one or more isolated environments.

18. A non-transitory computer readable storage medium comprising instructions for:

creating one or more isolated environments during installation of one or more applications;

maintaining a mapping between a resource as requested by the one or more applications and the corresponding resource inside said isolated environments, wherein said mapping is created or updated during one or more of installing an application in an isolated environment, running said application in said isolated environment, or accessing a resource corresponding to said resource mapping; and

uninstalling an application of the one or more applications, wherein said uninstalling comprises one or more of removing at least one of said mappings, uninstalling said application, and removing isolated environment information from storage.

19. The non-transitory computer readable storage medium of claim 18 comprising instructions for updating the one or more isolated environments as the one or more applications use additional resources.

20. The non-transitory computer readable storage medium of claim 18 comprising instructions for isolating the one or more applications from other applications and a host operating system while running within the one or more isolated environments.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2022
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 061365/0571 →
Continuity (5)
Continuation 15641300 · Jul 4, 2017
Continuation 15149518 · May 9, 2016
Continuation 14606175 · Jan 27, 2015
Continuation 13708477 · Dec 7, 2012
Continuation 12421691 · Apr 10, 2009