SYSTEM AND METHOD FOR MITIGATING REPEATED CRASHES OF AN APPLICATION RESULTING FROM SUPPLEMENTAL CODE
First Claim
1. A method of operating a computing device, comprising the acts of:
- monitoring operation of an application operating on the computing device to determine if the application crashes;
in the event the application crashes, identifying a plurality of recent memory locations within a call stack; and
determining if any of the identified memory locations correlate to code from a source other than a source of the application.
2 Assignments
0 Petitions
Accused Products
Abstract
Provided is a method for mitigating the effects of an application which crashes as the result of supplemental code (e.g., plug-in), particularly a plug-in from a source other than the source of the operating system of the device or the source of the application that crashes. The method includes executing the application. As the application is running, it may be monitored to determine if normal execution of instructions ceases. When that occurs, the system will make a determination if code from a supplemental code module was the cause of the crash, and will make an evaluation if that supplemental code module is from a source other than the source(s) of the operating system and application in question. In some implementations, remedial steps may be provided, such as providing information on subsequent executions of the application.
50 Citations
61 Claims
-
1. A method of operating a computing device, comprising the acts of:
-
monitoring operation of an application operating on the computing device to determine if the application crashes; in the event the application crashes, identifying a plurality of recent memory locations within a call stack; and determining if any of the identified memory locations correlate to code from a source other than a source of the application. - View Dependent Claims (2, 3, 4)
-
-
5. A method of determining a cause of an application crash on a computing device, comprising the acts of:
-
detecting when an application operating on the computing device has crashed, the application originating from a first source; retrieving at least a portion of memory locations within a stack; identifying if any of the retrieved memory locations correspond to code from a plug-in to the application, and for any such code identified to be from a plug-in, identifying if the code is from a source different from the first source; and identifying if the identified plug-in code was a cause of the crash of the application. - View Dependent Claims (6, 7, 8, 9, 10)
-
-
11. A machine readable medium having a plurality of instructions, which when implemented by a machine, cause operations to be performed which comprise:
-
monitoring operations of an application operating on the machine to determine if the application crashes; in the event the application crashes, identifying a plurality of recent memory locations within a stack; and determining if any of the identified memory locations correspond to code from a source other than a source of the application. - View Dependent Claims (12)
-
-
13. A machine-readable medium including a set of instructions which when implemented by a machine, cause operations to be performed which comprise deciding whether to load one or more supplemental code modules into an application, the operations further comprising:
-
executing the application; and determining whether the application has crashed since its last execution because of a third party supplemental code module. - View Dependent Claims (14, 15)
-
-
16. A machine readable medium having a plurality of instructions, which when implemented by a machine, cause operations to be performed which comprise:
-
operations to perform the intended functionality of an application program, which application program is configured to utilize supplemental code; and operations which interface with a monitoring system external to the application, comprising; initiating a call to the monitoring system to request information regarding whether the application crashed during a prior instantiation as a result of supplemental code from a source different than a source of the application; and providing a user interface to present information to a user regarding a prior crash, the information received in response to the initiated call.
-
-
17. A method of evaluating crashes of an application operating on a computing device, wherein the application utilizes plug-ins, comprising the acts of:
-
detecting that the application has crashed; identifying a plurality of recently loaded code modules, and evaluating if any identified code modules are from a source other than a source of the application, and also from a source other than a source of an operating system on the computing device; determining a cause of the crash of the application; evaluating if code modules evaluated to be from a source other than the source of the application and other than the source of the operating system played a role in the crash of the application. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A computing device having at least one application operable thereby, and wherein the application operates in part through use of supplemental code modules which interact with the application through at least one application program interface, comprising:
-
a first monitoring system configured to determine if an implementation of the application crashes during a first use, and to retrieve data including a series of memory addresses in a stack for the application; a second monitoring system in communication with the first monitoring system and configured to evaluate the retrieved code modules and to evaluate if any of the retrieved code modules are from a source other than the source of the application; a determination system configured to determine if any retrieved code module evaluated to be from a source other than the source of the application was a cause of the application crash; and a response system configured to take an action in response to a determination that a retrieved code module was a cause of the application crash. - View Dependent Claims (23, 24, 25, 26)
-
-
27. A method for determining a probable cause of a crash of an application, the method comprising the acts of:
-
detecting a crash of the application; and deciding whether the application has crashed because of a third party supplemental code module. - View Dependent Claims (28, 29, 30, 31)
-
-
32. A method for deciding whether to load one or more supplemental code modules into an application, the method comprising the acts of:
-
determining whether the application has crashed since its last execution because of a third party supplemental code module; and selectively performing an action based on the determination and selected from the group consisting of uninstalling, disabling and loading the third party supplemental code module. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. A system for deciding whether to load one or more supplemental code modules into an application, the system comprising:
-
a crash determination module adapted to determine whether the application has crashed since its last execution because of a third party supplemental code module; and a supplemental code loading module adapted to selectively perform an action relative to an identified third party supplemental code module, the action selected from the group consisting of uninstalling, disabling and loading the third party supplemental code module. - View Dependent Claims (46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56)
-
-
57. A system for determining a probable cause of a crash of an application, the system comprising:
-
a crash detection module adapted to detect a crash of the application; and a crash cause decision module adapted to decide whether the application has crashed because of a third party supplemental code module. - View Dependent Claims (58, 59, 60, 61)
-
Specification