Event-responsive download of portions of streamed applications
First Claim
Patent Images
1. An apparatus comprising:
- one or more computer readable storage devices;
a computing system operatively coupled with the one or more computer readable storage devices; and
program instructions stored on the one or more computer readable storage devices and comprising at least an event handling portion of an application program for facilitating streaming of the application program that, when executed by the computing system directs the computing system to at least;
monitor for an event associated with execution of an initial portion of the application program downloaded with the event handling portion, wherein the event comprises an access violation triggered by an execution jump to a portion of memory that is restricted and that involves an additional portion of the application program not yet downloaded to the computing system;
in response to detecting the access violation, pause the execution of the initial portion of the application program and initiate downloading of the additional portion of the application program to the computing system; and
upon downloading the additional portion of the application program to the computing system, resume the execution of the initial portion of the application program that involves the additional portion of the application program;
wherein the access violation corresponds to an access restricted page within a range of virtual memory allocated to the application program, wherein the access restricted page comprises a page loaded into the range of virtual memory but not accessible by the initial portion of the application, wherein the access violation is not a page fault, and wherein to monitor for the event, the event handling portion of the application program directs the computing system to at least;
receive a notification of the access violation from an operating system element that the access violation occurred.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed here are implementations involving an application program that includes an event handling portion. The event handling portion monitors for an event associated with execution of an initial portion of the application program downloaded with the event handling portion that involves an additional portion of the application program not yet downloaded. In response to detecting the event, the execution of the initial portion of the application program is paused by the event handler and downloading of the additional portion is initiated. Upon downloading the additional portion of the application program, execution of the initial portion of the application program can resume.
33 Citations
19 Claims
-
1. An apparatus comprising:
-
one or more computer readable storage devices; a computing system operatively coupled with the one or more computer readable storage devices; and program instructions stored on the one or more computer readable storage devices and comprising at least an event handling portion of an application program for facilitating streaming of the application program that, when executed by the computing system directs the computing system to at least; monitor for an event associated with execution of an initial portion of the application program downloaded with the event handling portion, wherein the event comprises an access violation triggered by an execution jump to a portion of memory that is restricted and that involves an additional portion of the application program not yet downloaded to the computing system; in response to detecting the access violation, pause the execution of the initial portion of the application program and initiate downloading of the additional portion of the application program to the computing system; and upon downloading the additional portion of the application program to the computing system, resume the execution of the initial portion of the application program that involves the additional portion of the application program; wherein the access violation corresponds to an access restricted page within a range of virtual memory allocated to the application program, wherein the access restricted page comprises a page loaded into the range of virtual memory but not accessible by the initial portion of the application, wherein the access violation is not a page fault, and wherein to monitor for the event, the event handling portion of the application program directs the computing system to at least;
receive a notification of the access violation from an operating system element that the access violation occurred. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for facilitating streaming of an application program comprising an event handling portion, an initial portion, and an additional portion, the method comprising:
-
downloading a boot block from a network location to a computing system, wherein the boot block includes the event handling portion and the initial portion of the application program; and during execution of the application program, detecting an event comprising an access violation triggered by an execution jump to a portion of memory that is restricted and is associated with execution of the initial portion involving the additional portion; responsive to detecting the event, downloading the additional portion from the network location to the computing system; wherein the access violation corresponds to an access restricted page within a range of virtual memory allocated to the application program, wherein the access restricted page comprises a page loaded into the range of virtual memory but not accessible by the initial portion of the application, wherein the access violation is not a page fault, and wherein to monitor for the event, the event handling portion of the application program directs the computing system to at least;
receive a notification of the access violation from an operating system element that the access violation occurred. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. One or more computer readable storage devices having stored thereon at least an event handling portion of an application program for facilitating streaming of the application program that when executed by a computing system directs the computing system to at least:
-
during execution of the initial portion of the application downloaded with the event handling portion, monitor for an access violation triggered by an execution jump to a portion of memory that is restricted and that involves a first additional portion of the application program not yet downloaded to the computing system; in response to detecting the access violation, pause the execution of the initial portion of the application program and initiate a download of the first additional portion of the application program to the computing system; and upon downloading the first additional portion of the application program to the computing system, resume the execution of the initial portion of the application program; wherein the access violation corresponds to an access restricted page within a range of virtual memory allocated to the application program, wherein the access restricted page comprises a page loaded into the range of virtual memory but not accessible by the initial portion of the application, wherein the access violation is not a page fault, and wherein to monitor for the event, the event handling portion of the application program directs the computing system to at least;
receive a notification of the access violation from an operating system element that the access violation occurred. - View Dependent Claims (16, 17, 18, 19)
-
Specification