← Back to Patent Explorer
US6630946B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Methods for automatically locating data-containing windows in frozen applications program and saving contents

Assignee: STEC IP LLC
•
Filing: 1999-11-10
•
Granted: 2003-10-07
•
Expires: 2019-11-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A machine-automated system tries to save vital-data of a crashed or otherwise frozen application program by: (a) attempting to revive a program that has apparently become frozen; (b) identifying the apparently-frozen program; (c) identifying one or more windows within the identified program that are most likely to immediately contain data which the user is likely to consider as vital and in need of saving; (d) sending one or both of a SAVE and a CLOSE command message to each of the identified one or more windows so as to thereby cause that window to itself save its vital data contents and to thereafter gracefully close itself. A profiling database may be constructed for helping to identify the vital data-containing windows of both popular (well known) and obscure application programs. One such profiling database has ID records which define parent/child hierarchy relationships between vital data-containing windows and other windows of various application programs.

Inventors

  • 👤 Scott C. Elliott
  • 👤 K. Jeffrey Percy Carr

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 19:26
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/451; G06F40/00; G06F40/10; G06F40/166; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 37
Claim 1
Independent Claim 78 words
A machine system for automatically saving work product of frozen and subsequently revived application programs, said machine system comprising: (a) first means for identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) second means, operatively coupled to and responsive to the first means, for instructing one or more of said identified windows to automatically save their contained data.
Claim 2
Dependent Claim 78 words
A machine system for automatically saving work product of frozen and subsequently revived application programs, said machine system comprising: (a) first means for identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) second means, operatively coupled to and responsive to the first means, for instructing one or more of said identified windows to automatically save their contained data.
Claim 3
Dependent Claim 76 words
The machine system of claim 1 wherein said first means includes: (a.1) a database having a plurality of criteria satisfaction records, where each said criteria satisfaction record defines at least one of: (a.1a) a parent/child hierarchy relationship between a vital data-containing window and other windows of a respective one or more application programs, and (a.1b) a child to name of containing program relationship between a vital data-containing window and a respective one or more application programs.
Claim 4
Dependent Claim 30 words
The machine system of claim 2 wherein each said criteria satisfaction record defines at least both of said parent/child hierarchy relationship and said child to name of containing program relationship.
Claim 5
Dependent Claim 92 words
The machine system of claim 2 wherein: (a.2) each said criteria satisfaction record is further associated with a Save-And-Close message field that identifies a respective Save-And/Or-Close message stream that is to be sent to a corresponding one or more of said identified windows for causing such windows to save their contained data; and (b.1) said second means uses the Save-And-Close message field for identifying the Save-And/Or-Close message stream that is to be sent to a corresponding one or more of said identified windows for causing such windows to save their contained data.
Claim 6
Dependent Claim 66 words
A machine-implemented method for automatically saving work product of frozen and subsequently revived application programs, said machine-implemented method comprising the steps of: (a) identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) instructing one or more of said identified windows to automatically save their contained data.
Claim 7
Dependent Claim 66 words
A machine-implemented method for automatically saving work product of frozen and subsequently revived application programs, said machine-implemented method comprising the steps of: (a) identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) instructing one or more of said identified windows to automatically save their contained data.
Claim 8
Dependent Claim 121 words
Data conveying media for conveying database information that is useful for identifying one or more windows of a frozen and subsequently revived application program which, contain vital data in need of saving, where the conveyed database information contains one or more criteria satisfaction records, where each said criteria satisfaction record defines at least one of: (a.1a) a parent/child hierarchy relationship between a vital data-containing window and other windows of a respective one or more application programs, and (a.1b) a child to name of containing program relationship between a vital data-containing window and a respective one or more application programs; wherein a vital data-containing window is a window which, based on one or more rules, contains data in need of automatic saving.
Claim 9
Dependent Claim 121 words
Data conveying media for conveying database information that is useful for identifying one or more windows of a frozen and subsequently revived application program which, contain vital data in need of saving, where the conveyed database information contains one or more criteria satisfaction records, where each said criteria satisfaction record defines at least one of: (a.1a) a parent/child hierarchy relationship between a vital data-containing window and other windows of a respective one or more application programs, and (a.1b) a child to name of containing program relationship between a vital data-containing window and a respective one or more application programs; wherein a vital data-containing window is a window which, based on one or more rules, contains data in need of automatic saving.
Claim 10
Dependent Claim 84 words
An instruction conveying device for conveying machine instructions to a programmable machine, where the conveyed instructions cause said machine to save work product of frozen and subsequently revived application programs by carrying out a saving method comprising the steps of: (a) identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) instructing one or more of said identified windows to automatically save their contained data.
Claim 11
Dependent Claim 84 words
An instruction conveying device for conveying machine instructions to a programmable machine, where the conveyed instructions cause said machine to save work product of frozen and subsequently revived application programs by carrying out a saving method comprising the steps of: (a) identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) instructing one or more of said identified windows to automatically save their contained data.
Claim 12
Dependent Claim 79 words
An instructing signal for instructing a programmable machine to save work product of frozen and subsequently revived application programs, said instructing signal causing the machine to carry out a saving method comprising the steps of: (a) identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) instructing one or more of said identified windows to automatically save their contained data.
Claim 13
Dependent Claim 79 words
An instructing signal for instructing a programmable machine to save work product of frozen and subsequently revived application programs, said instructing signal causing the machine to carry out a saving method comprising the steps of: (a) identifying one or more windows of a frozen and subsequently revived application program which, based on one or more rules, contain vital data in need of saving; and (b) instructing one or more of said identified windows to automatically save their contained data.
Claim 14
Dependent Claim 112 words
A record defining signal for conveying database information that is useful for identifying one or more windows of a frozen and subsequently revived application program which, contain vital data in need of saving, where the record defining signal conveys satisfaction criteria defining at least one of: (a.1a) a parent/child hierarchy relationship between a vital data-containing window and other windows of a respective one or more application programs, and (a.1b) a child to name of containing program relationship between a vital data-containing window and a respective one or more application programs wherein a vital data-containing window is a window which, based on one or more rules, contains data in need of automatic saving.
Claim 15
Dependent Claim 112 words
A record defining signal for conveying database information that is useful for identifying one or more windows of a frozen and subsequently revived application program which, contain vital data in need of saving, where the record defining signal conveys satisfaction criteria defining at least one of: (a.1a) a parent/child hierarchy relationship between a vital data-containing window and other windows of a respective one or more application programs, and (a.1b) a child to name of containing program relationship between a vital data-containing window and a respective one or more application programs wherein a vital data-containing window is a window which, based on one or more rules, contains data in need of automatic saving.
Claim 16
Independent Claim 95 words
A method for distinctively identifying one or more windows within a windows hierarchy of an application program, said method comprising the steps of: (a) running said application program; (b) executing a spy program that can spy on windows of said running application program; (c) using the spy program to manually identify a window of the application program that contains data to automatically save in the event of a future crash or other freeze of said application program; and (d) formulating one or more rules that enable automated and distinguishing identification of said manually identified window.
Claim 17
Independent Claim 95 words
A method for distinctively identifying one or more windows within a windows hierarchy of an application program, said method comprising the steps of: (a) running said application program; (b) executing a spy program that can spy on windows of said running application program; (c) using the spy program to manually identify a window of the application program that contains data to automatically save in the event of a future crash or other freeze of said application program; and (d) formulating one or more rules that enable automated and distinguishing identification of said manually identified window.
Claim 18
Dependent Claim 26 words
The identification method of claim 10 and further comprising the step of: (e) recording the formulated one or more rules in a machine readable, storage medium.
Claim 19
Dependent Claim 194 words
A manufactured instructing signal for instructing an instructable machine to save in-progress work of an apparently frozen application program that has been subjected to an automated revival process (which automated revival process can include doing essentially nothing to the apparently frozen application program), the apparently frozen application program being an application program that fails to provide a user observable response to one or more user inputs that would normally produce a user observable response, said manufactured instructing signal causing the machine to carry out an automated saving method comprising: (a) identifying, among plural open windows of the apparently frozen application program subjected to the automated revival process, a window that has a relatively high probability, in comparison to corresponding other probabilities of others of the plural open windows, of containing vital data representing in-progress work product of the apparently frozen application program, where said vital data is data a user of the program would, based on one or more rules, want to save into a file but may not have yet saved into a file when said application program became apparently frozen; and (b) instructing the identified window to automatically save its contained data.
Claim 20
Dependent Claim 194 words
A manufactured instructing signal for instructing an instructable machine to save in-progress work of an apparently frozen application program that has been subjected to an automated revival process (which automated revival process can include doing essentially nothing to the apparently frozen application program), the apparently frozen application program being an application program that fails to provide a user observable response to one or more user inputs that would normally produce a user observable response, said manufactured instructing signal causing the machine to carry out an automated saving method comprising: (a) identifying, among plural open windows of the apparently frozen application program subjected to the automated revival process, a window that has a relatively high probability, in comparison to corresponding other probabilities of others of the plural open windows, of containing vital data representing in-progress work product of the apparently frozen application program, where said vital data is data a user of the program would, based on one or more rules, want to save into a file but may not have yet saved into a file when said application program became apparently frozen; and (b) instructing the identified window to automatically save its contained data.
Claim 21
Dependent Claim 17 words
The manufactured instructing signal of claim 12 and wherein: (a.1) said vital data includes non-replicatable work product.
Claim 22
Dependent Claim 24 words
The manufactured instructing signal of claim 12 and wherein: (a.1) said vital data includes data that had just been captured and/or transformed in real-time.
Claim 23
Dependent Claim 38 words
The manufactured instructing signal of claim 12 and wherein: said subjecting of the apparently frozen application program to an automated revival process includes trying to CLOSE or CANCEL a currently active window of the apparently frozen application program.
Claim 24
Dependent Claim 56 words
The manufactured instructing signal of claim 12 and wherein: said subjecting of the apparently frozen application program to an automated revival process includes entering an execution stream of the apparently frozen application program at a point where continued execution will attempt to preserve the application program's work-product state just before encounter with a freeze-causing event occurred.
Claim 25
Dependent Claim 86 words
The manufactured instructing signal of claim 12 and wherein said identifying includes: (a.1) analyzing a parent/child windows hierarchy relationship present between two or more of said plural open windows of the apparently frozen application program subjected to the automated revival process; and (a.2) consulting a pre-established, hierarchy profiling database to determine if a pre-established navigation profile matches or statistically correlates to a navigation path found for the analyzed ones of said plural open windows of the apparently frozen application program subjected to the automated revival process.
Claim 26
Dependent Claim 85 words
The manufactured instructing signal of claim 17 and wherein said identifying further includes: (a.3) determining the name of the apparently frozen application program subjected to the automated revival process; and (a.4) further consulting the pre-established, hierarchy profiling database to determine if a pre-established navigation profile with a matching navigation path profile further has a program name identifier associated with said database profile where the associated program name identifier corresponds to the determined name of the apparently frozen application program subjected to the automated revival process.
Claim 27
Dependent Claim 57 words
The manufactured instructing signal of claim 12 and wherein: (a.1) said identifying includes using a database that has been constructed for each of multiple programs for identifying where in a windows hierarchy of each of said multiple programs, there will be a window that contains information that an end user would generally consider as being vital data.
Claim 28
Dependent Claim 25 words
The manufactured instructing signal of claim 12 and wherein: (b.1) said instructing of the identified window includes sending a CLOSE message to the identified window.
Claim 29
Dependent Claim 172 words
A machine-implemented process which tries to save vital data representing in-progress work product of an apparently frozen application program, where the apparently frozen application program is an application program that fails to provide a user observable response to one or more user inputs that would normally produce a user observable response, said machine-implemented process comprising: (a) using a pre-defined, windows hierarchy profiling database to make intelligent determinations as to probabilities that a certain one or more open windows, of the apparently frozen application program subjected to a revival process, contains vital-data; (b) ordering the identified probabilities determined in step (a); and (c) successively instructing the identified, open windows to automatically save their data, where said succession proceeds through candidate windows in accordance with the ordering established in step (b), where said vital data is data a user of the apparently frozen application program would, based on one or more rules, want to save into a file but may not have yet saved into a file when said application program became apparently frozen.
Claim 30
Dependent Claim 172 words
A machine-implemented process which tries to save vital data representing in-progress work product of an apparently frozen application program, where the apparently frozen application program is an application program that fails to provide a user observable response to one or more user inputs that would normally produce a user observable response, said machine-implemented process comprising: (a) using a pre-defined, windows hierarchy profiling database to make intelligent determinations as to probabilities that a certain one or more open windows, of the apparently frozen application program subjected to a revival process, contains vital-data; (b) ordering the identified probabilities determined in step (a); and (c) successively instructing the identified, open windows to automatically save their data, where said succession proceeds through candidate windows in accordance with the ordering established in step (b), where said vital data is data a user of the apparently frozen application program would, based on one or more rules, want to save into a file but may not have yet saved into a file when said application program became apparently frozen.
Claim 31
Dependent Claim 247 words
A machine-implemented method for assisting a computer user in preserving unsaved work-product of an apparently frozen application program, the apparently frozen application program being an application program that fails to provide a user observable response to one or more user inputs that would normally produce a user observable response, said machine-implemented assisting method comprising: (a) providing the user with a choice of attempting to revive the apparently frozen program with or without an accompanying, automated attempt to save the unsaved work-product; (b) if the user chooses to attempt a revival with the accompanying attempt to save the unsaved work-product: (b.1) performing an automated revival attempt; (b.2) if said automated revival attempt appears to have been successful, identifying one or more open windows of the apparently frozen application program subjected to said automated revival attempt which contain vital-data, where said vital data is data an average user of the application program would, based on one or more rules, want to save into a file if it had not yet been saved into a file when said application program became apparently frozen; (b.3) starting with a window identified in step (b. 2 ) as having a higher probability of containing vital data, successively instructing the identified, open windows of the apparently frozen application program subjected to said automated revival attempt, to automatically save their data, where said succession proceeds from candidate windows with higher probabilities of containing vital data to candidate windows with lower probabilities of containing vital data.
Claim 32
Dependent Claim 247 words
A machine-implemented method for assisting a computer user in preserving unsaved work-product of an apparently frozen application program, the apparently frozen application program being an application program that fails to provide a user observable response to one or more user inputs that would normally produce a user observable response, said machine-implemented assisting method comprising: (a) providing the user with a choice of attempting to revive the apparently frozen program with or without an accompanying, automated attempt to save the unsaved work-product; (b) if the user chooses to attempt a revival with the accompanying attempt to save the unsaved work-product: (b.1) performing an automated revival attempt; (b.2) if said automated revival attempt appears to have been successful, identifying one or more open windows of the apparently frozen application program subjected to said automated revival attempt which contain vital-data, where said vital data is data an average user of the application program would, based on one or more rules, want to save into a file if it had not yet been saved into a file when said application program became apparently frozen; (b.3) starting with a window identified in step (b. 2 ) as having a higher probability of containing vital data, successively instructing the identified, open windows of the apparently frozen application program subjected to said automated revival attempt, to automatically save their data, where said succession proceeds from candidate windows with higher probabilities of containing vital data to candidate windows with lower probabilities of containing vital data.
Claim 33
Dependent Claim 59 words
The machine-implemented assisting method of claim 22 and further comprising: (c) while step (b.3) is trying to successively cause each window that has vital data to save its vital data, preventing the user from gaining intervening control over the apparently frozen application program by automatically responding to intervening dialog inquiries so as to continue a windows-saving operation to completion.
Claim 34
Dependent Claim 115 words
The machine-implemented assisting method of claim 22 and further comprising: (c) while step (b.3) is trying to successively cause each window that has vital data to save its vital data, preventing the user from gaining intervening control over the apparently frozen application program subjected to said automated revival attempt by waiting for each window that has vital data to finish saving its vital data and to thereafter close, and during said waiting, automatically detecting further apparent freezes of the application program and automatically performing further automated revival attempts on the further frozen program so that the window which is being instructed to save its own vital data can complete the save and close down sequence.
Claim 35
Dependent Claim 76 words
The machine-implemented assisting method of claim 22 and further comprising: (c) after said step (b.3) of trying to successively cause each window that has vital data to save its vital data completes: (c.1) shutting down the apparently frozen application program subjected to said automated revival attempt; (c.2) re-launching a fresh copy of the shut down application program; and (c.3) automatically loading into the re-launched application program, the vital data that had been saved in step (b.3).
Claim 36
Dependent Claim 76 words
A machine system for automatically saving work product of frozen and subsequently revived application programs, said machine system comprising: (a) first means for using pre-established satisfaction rules to identify one or more windows of a frozen and subsequently revived application program which contain vital data worthy of saving; and (b) second means, operatively coupled to and responsive to the first means, for instructing one or more of said identified windows to automatically save their contained data.
Claim 37
Dependent Claim 76 words
A machine system for automatically saving work product of frozen and subsequently revived application programs, said machine system comprising: (a) first means for using pre-established satisfaction rules to identify one or more windows of a frozen and subsequently revived application program which contain vital data worthy of saving; and (b) second means, operatively coupled to and responsive to the first means, for instructing one or more of said identified windows to automatically save their contained data.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2006-10-06 2007-04-07 2007-10-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2010-10-06 2011-04-07 2011-10-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2014-10-06 2015-04-07 2015-10-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag