System for downloading and executing a virtual application
First Claim
1. A method performed by a virtual process manager and a client application both executing on a first computing device, the method comprising:
- the client application connecting to a second computing device over a network, the second computing device storing a virtualized application file at least partially implementing a virtual application, the client application comprising a web browser or an operating system shell process that is implemented by an operating system of the first computing device;
without user input, the client application sending a command to the virtual process manager to download a portion of the virtualized application file from the second computing device;
without user input, the virtual process manager downloading the portion of the virtualized application file from the second computing device, and waiting to execute the virtual application at least partially implemented by the downloaded virtualized application file on the first computing device until the virtual process manager receives a command from the client application to do so;
after the virtual process manager has begun downloading the portion of the virtualized application file from the second computing device, the client application receiving a user command to execute the virtual application at least partially implemented by the virtualized application file and in response to the user command, sending a command to the virtual process manager to execute the virtual application at least partially implemented by the downloaded virtualized application file on the first computing device; and
in response to the command to execute the virtual application, the virtual process manager downloading any portions of the virtualized application file not previously downloaded from the second computing device, and executing the virtual application at least partially implemented by the downloaded virtualized application file on the first computing device.
3 Assignments
0 Petitions
Accused Products
Abstract
A virtual process manager for use with a client application. Both the process manager and the client application are installed on a client computing device. In response to a user command to execute a virtual application at least partially implemented by a virtualized application file stored on a remote computing device, the client application sends a high priority command to the process manager to execute the virtual application. Before receiving the user command, the client application sends a low priority command to the process manager to download at least a portion of the virtualized application file. In response to the high priority command, and without additional user input, the process manager downloads any portion of the file not downloaded in response to the low priority command, and executes the virtual application on the client computing device. The client application may comprise a conventional web browser or operating system shell process.
-
Citations
13 Claims
-
1. A method performed by a virtual process manager and a client application both executing on a first computing device, the method comprising:
-
the client application connecting to a second computing device over a network, the second computing device storing a virtualized application file at least partially implementing a virtual application, the client application comprising a web browser or an operating system shell process that is implemented by an operating system of the first computing device; without user input, the client application sending a command to the virtual process manager to download a portion of the virtualized application file from the second computing device; without user input, the virtual process manager downloading the portion of the virtualized application file from the second computing device, and waiting to execute the virtual application at least partially implemented by the downloaded virtualized application file on the first computing device until the virtual process manager receives a command from the client application to do so; after the virtual process manager has begun downloading the portion of the virtualized application file from the second computing device, the client application receiving a user command to execute the virtual application at least partially implemented by the virtualized application file and in response to the user command, sending a command to the virtual process manager to execute the virtual application at least partially implemented by the downloaded virtualized application file on the first computing device; and in response to the command to execute the virtual application, the virtual process manager downloading any portions of the virtualized application file not previously downloaded from the second computing device, and executing the virtual application at least partially implemented by the downloaded virtualized application file on the first computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable medium comprising:
-
instructions that when executed by a processor implement a client application comprising a web browser or an operating system shell process that is implemented by an operating system executed by the processor, the client application being configured to; receive a webpage from a remote server computing device, the webpage identifying a virtualized application file stored on the remote server computing device; before receiving any user commands with respect to the webpage, send a low priority command to download at least a portion of the virtualized application file from the remote server computing device; receive a user command with respect to the webpage to execute the virtualized application file, and in response to the user command, send a high priority command to execute the virtualized application file; and instructions that when executed by a processor implement a virtual process manager, the virtual process manager being configured to; receive the low priority command sent by the client application, in response to receiving the low priority command and without additional user input, begin downloading the portion of the virtualized application file, receive the high priority command sent by the client application, and in response to receiving the high priority command and without additional user input, download any previously undownloaded portions of the virtualized application file, and initiate execution of the downloaded virtualized application file. - View Dependent Claims (9)
-
-
10. A method performed by a first computing device in communication with a second computing device over a network, the method comprising:
-
at a client application executing on the first computing device, receiving a plurality of application identifiers each associated with a different virtualized application file stored on the second computing device, the client application comprising a web browser or an operating system shell process that is implemented by an operating system of the first computing device; the client application sending low priority commands to a virtual process manager executing on the first computing device, each of the low priority commands commanding the virtual process manager to download a portion of an associated one of the virtualized application file stored on the second computing device; at the client application, receiving user commands to execute selected ones of the virtualized application files stored on the second computing device; in response to each of the user commands, the client application sending a high priority command to the virtual process manager to execute a virtual application at least partially implemented by an associated one of the virtualized application files stored on the second computing device; at the virtual process manager, receiving the low priority commands sent by the client application; in response to receiving each of the low priority commands and without additional user input, the virtual process manager initiating download of the associated one of virtualized application files from the second computing device, at the virtual process manager, receiving the high priority commands sent by the client application; and in response to receiving each of the high priority commands sent by the client application and without additional user input, the virtual process manager pausing the downloading initiated in response to the low priority commands, downloading any portion of the associated one of the virtualized application files not downloaded in response to the low priority commands, executing the virtual application at least partially implemented by the downloaded virtualized application file on the first computing device, and resuming the downloading initiated in response to the low priority commands with respect to any of the virtualized application files not associated with one of the high priority commands. - View Dependent Claims (11, 12, 13)
-
Specification