US2021055938A1PendingUtilityA1
Hydration in virtual machines
Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Aug 23, 2019Filed: Dec 23, 2019Published: Feb 25, 2021
Est. expiryAug 23, 2039(~13.1 yrs left)· nominal 20-yr term from priority
G06F 3/0608G06F 3/0649G06F 3/067G06F 3/0613G06F 9/45533G06F 8/61G06F 16/178G06F 8/62G06F 9/445G06F 9/44505G06F 3/0673G06F 3/0659G06F 3/0604
55
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
Techniques are disclosed for managing applications. Responsive to receiving a request for access to a first application, metadata is retrieved that is written to the virtual machine. Responsive to the metadata indicating that the first application is not written to the virtual machine, a download request is transmitted to a remote host. A download package for application is received that includes one or more application files that are operable to execute the application when stored at the virtual machine without executing an installation process.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A system comprising:
one or more processors; a memory in communication with the one or more processors, the memory storing computer-readable instructions stored thereupon which, when executed by the one or more processors, cause the system to: receive a request to launch a first application on a virtual machine; responsive to the request, retrieve metadata that is stored at the virtual machine in association with the first application, the metadata indicating that files associated with the first application are not stored at the virtual machine; transmit a download request to an application host that is associated with the first application, the download request including aspects of the metadata to identify the first application; receive, from the application host, a download package including one or more application files that are operable to execute the first application when stored at the virtual machine without executing an installation process; and based on the download package, service the request by launching the application without executing the installation process.
2 . The system of claim 1 , further comprising computer-readable instructions stored thereupon which, when executed by the one or more processors, cause the system to:
receive a request for access to a second application on the virtual machine; responsive to receiving the second request, retrieve metadata that is stored at the virtual machine indicative of whether the second application is stored at the virtual machine; and responsive to the metadata indicating that the second application is stored at the virtual machine, cause installation of the second application at the virtual machine, wherein files associated with the second application are stored at the virtual machine.
3 . The system of claim 1 , wherein the first application is an operating system component.
4 . The system of claim 1 , wherein when the first application is not written at the virtual machine, files associated with the first application are stored remotely from the virtual machine.
5 . A method comprising:
installing a first application at a virtual machine, wherein files associated with the first application are stored on a local virtual storage of the virtual machine; installing a second application at the virtual machine, wherein files associated with the second application are stored on a remote host; storing, at the virtual machine, metadata indicative that the second application is not written to local virtual storage of the virtual machine; responsive to a request to launch the second application, determining that the metadata indicates that the second application is not written to the local virtual storage of the virtual machine; causing a download request to be transmitted to the remote host; receiving, from the remote host based on the download request, a download package for the second application, wherein the download package includes one or more application files that are operable to execute the second application without executing an installation process; based on the download package, writing the application files to the local virtual storage of the virtual machine; and servicing the request by launching the second application without executing the installation process.
6 . The method of claim 5 , wherein when a predetermined condition is met, the files associated with the second application are removed from the virtual machine and stored at the remote host.
7 . The method of claim 5 , further comprising:
when a predetermined condition is met, the files associated with the first application are removed from the virtual machine and stored at the remote host, and storing, at the virtual machine, metadata indicative that the first application is not written at the virtual machine.
8 . The method of claim 7 , wherein the predetermined condition is one or more of an amount of storage that is available, an age of installation of the second application, or time since the second application has been accessed.
9 . The method of claim 5 , further comprising intercepting application launches to determine if a requested application is stored at the virtual machine.
10 . The method of claim 5 , wherein determination of which applications are stored at the virtual machine is made during an initial configuration of the virtual machine and as applications are subsequently dehydrated or hydrated.
11 . The method of claim 5 , wherein the second application is indicated as being locally available via a user interface indicative of a filing system.
12 . A system configured to launch applications, the system configured to:
install a first application at a virtual machine, wherein files associated with the first application are stored on a local virtual storage of the virtual machine; install a second application at the virtual machine, wherein files associated with the second application are stored on a remote host; store, at the virtual machine, metadata indicative that the second application is not written to local virtual storage of the virtual machine; responsive to a request to launch the second application, determine that the metadata indicates that the second application is not written to the local virtual storage of the virtual machine; cause a download request to be transmitted to the remote host; receive, from the remote host based on the download request, a download package for the second application, wherein the download package includes one or more application files that are operable to execute the second application without executing an installation process; based on the download package, write the application files to the local virtual storage of the virtual machine; and service the request by launching the second application without executing the installation process.
13 . The system of claim 12 , wherein when a predetermined condition is met, the files associated with the second application are removed from the virtual machine and stored at the remote host.
14 . The system of claim 12 , further comprising:
when a predetermined condition is met, the files associated with the second application are removed from the virtual machine and stored at the remote host, and storing, at the virtual machine, metadata indicative that the first application is not written at the virtual machine.
15 . The system of claim 14 , wherein the predetermined condition is an amount of storage that is available to the virtual machine.
16 . The system of claim 14 , wherein the predetermined condition is a time since the second application has been accessed or executed.
17 . The system of claim 12 , further comprising intercepting application launches to determine if a requested application is stored at the virtual machine.
18 . The system of claim 12 , wherein determination of which applications are stored at the virtual machine is made during an initial configuration of the virtual machine.
19 . The system of claim 12 , wherein the second application is indicated as being available via a user interface indicative of a filing system.
20 . The system of claim 12 , wherein the metadata comprises one or more of file names, sizes, time stamps, permissions, and version.Join the waitlist — get patent alerts
Track US2021055938A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.