US2017078369A1PendingUtilityA1

Event-responsive download of portions of streamed applications

Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: May 17, 2012Filed: Nov 3, 2016Published: Mar 16, 2017
Est. expiryMay 17, 2032(~5.8 yrs left)· nominal 20-yr term from priority
G06F 9/44521H04L 67/18H04L 67/06H04L 65/60H04L 67/10G06F 9/542H04L 67/52G06F 9/44557
50
PatentIndex Score
0
Cited by
0
References
0
Claims

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.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . One or more computer readable media 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:
 monitor for an event associated with operations of an initial portion of the application program that was downloaded with the event handling portion, wherein the operations comprise a jump to a range of virtual memory allocated to an additional portion of the application program not yet downloaded to the computing system;   in response to detecting the event, pause the operations 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 operations of the initial portion of the application program that involves the additional portion of the application program.   
     
     
         2 . The one or more computer readable media of  claim 1  wherein the event associated with the operations of the initial portion of the application program comprises an access violation corresponding to an access restricted page within the range of virtual memory allocated to the application program. 
     
     
         3 . The one or more computer readable media of  claim 2  wherein the event handler portion of the application program, when executed by the computing system, further directs the computing system to identify the additional portion from remaining portions of the application program yet to be downloaded that correspond to the access restricted page. 
     
     
         4 . The one or more computer readable media of  claim 2  wherein the additional portion of the application program comprises executable code. 
     
     
         5 . The one or more computer readable media of  claim 2  wherein the additional portion of the application program comprises non-executable data to be processed by the initial portion of the application program. 
     
     
         6 . The one or more computer readable media of  claim 1  wherein the event associated with the operations of the initial portion of the application program comprises an attempt to read data from the additional portion of the application program. 
     
     
         7 . The one or more computer readable media of  claim 1  having stored thereon the initial portion of the application program that, when executed by the computing system, directs the computing system to map the event handler portion and the initial portion of the application program within a range of memory allocated to the application program. 
     
     
         8 . The one or more computer readable media of  claim 7  wherein the initial portion of the application program, when executed by the computing system, directs the computing system to map the additional portion of the application program within the range of memory allocated to the application program, wherein the memory comprises virtual memory. 
     
     
         9 . A method of operating an event handling portion of an application program on a computing system when streaming the application program to the computing system, the method comprising:
 monitoring for an event associated with operations of an initial portion of the application program that was downloaded with the event handling portion, wherein the operations comprise a jump to a range of virtual memory allocated to an additional portion of the application program not yet downloaded to the computing system;   in response to detecting the event, pausing the operations 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, resuming the operations of the initial portion of the application program that involves the additional portion of the application program.   
     
     
         10 . The method of  claim 9  wherein the event associated with the operations of the initial portion of the application program comprises an access violation corresponding to an access restricted page within the range of virtual memory allocated to the application program. 
     
     
         11 . The method of  claim 10  further comprising identifying the additional portion from remaining portions of the application program yet to be downloaded that correspond to the access restricted page. 
     
     
         12 . The method  claim 10  wherein the additional portion of the application program comprises executable code. 
     
     
         13 . The method of  claim 10  wherein the additional portion of the application program comprises non-executable data to be processed by the initial portion of the application program. 
     
     
         14 . The method of  claim 9  wherein the event associated with the operations of the initial portion of the application program comprises an attempt to read data from the additional portion of the application program. 
     
     
         15 . The method of  claim 9  wherein the event handler portion and the initial portion of the application program are mapped to a range of memory allocated to the application program. 
     
     
         16 . The method of  claim 15  the additional portion of the application program is also mapped to the range of memory allocated to the application program, wherein the memory comprises virtual memory. 
     
     
         17 . 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 operations of an initial portion of the application program that was downloaded with the event handling portion, wherein the operations comprise a jump to a range of virtual memory allocated to an additional portion of the application program not yet downloaded to the computing system;   in response to detecting the event, pause the operations 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 operations of the initial portion of the application program that involves the additional portion of the application program.   
     
     
         18 . The apparatus of  claim 17  wherein the event comprises an access violation that 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. 
 
     
     
         19 . The apparatus of  claim 18  wherein the event handler portion of the application program, when executed by the computing system, further directs the computing system to identify the additional portion from remaining portions of the application program yet to be downloaded corresponding to the access restricted page. 
     
     
         20 . The apparatus of  claim 18  wherein the additional portion of the application program comprises one of executable code or non-executable data to be processed by the initial portion of the application program.

Join the waitlist — get patent alerts

Track US2017078369A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.