Method and apparatus for allowing sharing of streamable applications
First Claim
1. A method of enabling a client to execute a streamable software application, the client including a file system that includes a non-streamable software application, the method comprising installing, in the client, client streaming software which configures the client so that the streamable software application can be located in the file system and executed in a streaming mode without being isolated from the non-streamable software application.
3 Assignments
0 Petitions
Accused Products
Abstract
A client on a network includes a file system that includes various non-streamable software applications. A streaming support system in the client enables a streamable software application to be located in the file system and executed in a streaming mode without being isolated from the non-streamable software applications in the file system. Non-streamable software applications can invoke the streamable software application, and vice versa. Multiple streamable software applications can be concurrently located throughout the file system and can be executed in the client in the streaming mode without restriction to any particular portion of the main file system. Streamable applications can be located anywhere in the file system that the corresponding non-streamable versions of the applications would be able to be located. The main file system does not need to contain complete copies of the required files for any streamable applications.
-
Citations
44 Claims
- 1. A method of enabling a client to execute a streamable software application, the client including a file system that includes a non-streamable software application, the method comprising installing, in the client, client streaming software which configures the client so that the streamable software application can be located in the file system and executed in a streaming mode without being isolated from the non-streamable software application.
- 10. A method of enabling a client, which includes a main file system, to execute a streamable software application, the method comprising configuring the client so that the streamable software application can be located in the main file system and executed in a streaming mode, without the streamable software application being required to be located in a predetermined portion of the main file system.
- 18. A method of enabling a client to execute a streamable software application, the method comprising configuring the client so that the streamable software application can be executed in the client in a streaming mode, without the streamable software application being located in a virtual file system.
-
25. A method of enabling a client on a network to stream software applications, the client including an operating system and a main file system, the method comprising:
-
configuring the client so that a plurality of streamable software applications can be concurrently located in the main file system and are not restricted to any particular location in the main file system for purposes of executing the streamable applications in a streaming mode, and so that each of the streamable software applications appears to the operating system to be entirely present in the client and can be executed in the client from the main file system in a streaming mode even if the streamable software application is not entirely resident locally to the client; and
executing at least one of the streamable software applications in the client in the streaming mode, including receiving one or more subsets of the streamable software application from a remote server while the streamable software application is executing in the client. - View Dependent Claims (26, 27, 28, 29)
-
-
30. A method of executing a streamable software application in a client in a streaming mode, the client including an operating system and a file system, the method comprising:
-
intercepting a request to the file system by the operating system for a block of the streamable application during streaming execution of the streamable software application, wherein the streamable software application is located at a user-modifiable location in the file system;
in response to the request, determining whether the block is present in the client system;
if the block is present in the client system, providing the block to the operating system; and
if the block is not present in the client system, then requesting the block from a remote server over the network and, in response to receiving the block from the remote server, providing the block to the operating system. - View Dependent Claims (31, 32, 33, 34)
-
-
35. A processing system comprising:
-
a processor;
a network adapter through which to communicate over a network;
an operating system;
a file system to implement a hierarchical structure of files, the file system including one or more non-streamable software applications and one or more streamable software applications, wherein the streamable software applications are not isolated from the non-streamable software applications in the file system, each of the streamable software applications including a plurality related blocks;
a memory coupled to the processor and storing client streaming support software, for execution by the processor, to enable the client system to execute the streamable software applications in a streaming mode, the client streaming software including a file filter driver to intercept a request to the file system by the operating system for a block of one of the streamed applications during streaming execution of said streamable application and, in response to the request, to determine whether the block is present in the client system, and if the block is present in the client system, to provide the block to the operating system. - View Dependent Claims (36, 37, 38, 39)
-
-
40. A client system comprising:
-
an operating system;
a file system to implement a hierarchical structure of files accessible to the operating system, the file system including one or more non-streamable software applications and one or more streamable software applications, wherein the streamable software applications are not isolated from the non-streamable software applications in the file system, each of the streamable software applications including a plurality related blocks;
means for intercepting a request to the file system by the operating system for a block of one of the streamed applications during streaming execution of said streamable application and, in response to the request, for determining whether the block is present in the client system, and if the block is present in the client system, to provide the block to the operating system; and
means for requesting the block from a remote server if the block is determined not to be present in the client system, and in response to receiving the block from the remote server, for providing the block to the operating system. - View Dependent Claims (41, 42, 43)
-
-
44. A client comprising:
-
a file system including a non-streamable software application; and
means for configuring the client system so that a streamable software application can be located in the file system and executed in a streaming mode without being isolated from the non-streamable software application.
-
Specification