Patents Represented by Attorney, Agent or Law Firm John E. Whitaker
  • Patent number: 6591379
    Abstract: A method and system for injecting an exception into a hung program module to recover unsaved data. The method and system allows a user to determine that the program module is hung and inject an exception into the hung program module. In response to the injected exception, program code, within the program module, is activated to detect the crash and launch a failure reporting executable program that instructs the hung program module to execute its data recovery program. The file recovery program recovers the unsaved data and notifies the failure reporting executable program when it has completed the data recovery. Once the failure reporting executable program receives the notification, it will instruct the operating system to restart the program module. The restarted program module then displays a user interface with a list of the unsaved data that were recovered. The user interface also provides controls for a user to select, from the list of recovered data, the data that the program module will keep.
    Type: Grant
    Filed: June 23, 2000
    Date of Patent: July 8, 2003
    Assignee: Microsoft Corporation
    Inventors: Eric A. LeVine, Kirk A. Glerum, Matthew J. Ruhlen, Michael R. Marcelais, Jeff David Mitchell, Steven Miles Greenberg
  • Patent number: 6542090
    Abstract: A character input apparatus and method which can give a plurality of different character input mean a capability of complementing each other.
    Type: Grant
    Filed: October 13, 1999
    Date of Patent: April 1, 2003
    Assignee: Microsoft Corporation
    Inventors: Masayoshi Tadano, Osamu Adachi, Fujimura Takeshi, Toshiaki Kikka
  • Patent number: 6523167
    Abstract: A recalculation engine version stamp is employed to determine whether a spreadsheet program file should be fully recalculated upon opening. When a spreadsheet program file is recalculated and saved, a recalculation engine version stamp is written to the file. The recalculation engine version stamp corresponds to the version of the calculation engine of the application program that last recalculated and saved the program file. When the program file is opened in a spreadsheet application program, the recalculation engine version stamp is compared to the calculation engine version number of the spreadsheet application program. If the calculation engine version number of the spreadsheet application program is more recent than the recalculation engine version stamp of the spreadsheet program file, then a full recalculation of the spreadsheet program file is performed.
    Type: Grant
    Filed: October 12, 1999
    Date of Patent: February 18, 2003
    Assignee: Microsoft Corporation
    Inventors: Timothy Fred Ahlers, Andrew J. Becker
  • Patent number: 6484155
    Abstract: Disclosed is an invention that provides a knowledge management system that supports inquiries of distributed knowledge resources. Those inquiries may be in the form of questions or problem statements presented by a user. Interaction between a user and the knowledge resources is mediated by a collection of cooperative intelligent agents. The cooperative intelligent agents incorporate generalized automated negotiation and distributed inference (i.e., problem-solving) processes. Using those processes in a hierarchical architecture, the invention analyzes input problem statements and organizes the problem statements as sets of tasks. In pursuit of each task, the invention solicits accessible knowledge repositories, represented by knowledge agents, for relevant knowledge, and then analyzes and integrates responses from those knowledge repositories. The invention may then provide the responses to a human user or a using process.
    Type: Grant
    Filed: July 21, 1999
    Date of Patent: November 19, 2002
    Assignee: Sentar, Inc.
    Inventors: Peter A. Kiss, Robert S. Daniel, III, Jeffrey S. Yalowitz
  • Patent number: 6388488
    Abstract: Described is a level-detection circuit having hysteresis and which may be powered down without losing the last state of the circuit. The level-detection circuit includes a first detection circuit, a trip-level adjustment circuit, and a second detection circuit. The first detection circuit may be essentially an inverter, with the output signal of the inverter fed to an input of the second detection circuit. The trip-level adjustment circuit is connected to the output signal and has control connections tied to the input signal. The trip-level adjustment circuit also includes control connections tied to the output signal of the circuit. In short, the trip-level adjustment circuit is configured such that one element of the trip-level adjustment circuit is connected in parallel with one element of the inverter of the first detection circuit when the input signal moves from a one potential to another potential.
    Type: Grant
    Filed: November 2, 2000
    Date of Patent: May 14, 2002
    Assignee: National Semiconductor Corporation
    Inventor: Franklin Sai-Wai Ho
  • Patent number: 6381740
    Abstract: A method and system for incrementally improving the layout of a program image of a computer program to reduce the working set. The system iteratively selects pairs of basic blocks and reorders the basic blocks in the range delimited by the selected pair of basic blocks. The system selects the pairs of basic blocks so that the working set of the computer program is improved by reordering the basic block in the range. Thus, during each iteration, the working set is improved. The system continues with these iterations until a termination condition (e.g., number of iterations) is satisfied. In one embodiment, during each iteration the system designates one of the basic blocks as an initial anchor basic block. The system then repeats the following until the same range of basic blocks is identified twice in a row.
    Type: Grant
    Filed: September 16, 1997
    Date of Patent: April 30, 2002
    Assignee: Microsoft Corporation
    Inventors: John W. Miller, John R. Douceur, Robert P. Fitzgerald
  • Patent number: 6212649
    Abstract: The application of a fault tolerance technique to the intelligent agent technology to create a highly-reliable distributed computing system. The present invention relates to the merger of software fault tolerance techniques to cooperative intelligent agents to provide highly reliable coordination of interactions between computer systems, even when data is corrupt, when available information is incomplete, or when synchronization of the computer systems is imperfect. Agents engaged in an interaction exchange information. Received information is acceptance tested to determine if the information indicates the occurrence of a fault. If the information is outside a range of expected values, or otherwise does not take the form of expected information, a fault is indicated. A fault tolerance technique is employed to overcome the fault. One such technique is the retry block software fault technique. Re-expression and re-transmission of the information may be requested.
    Type: Grant
    Filed: December 30, 1997
    Date of Patent: April 3, 2001
    Assignee: Sentar, Inc.
    Inventors: Jeffrey S. Yalowitz, Robert S. Daniel, III, Laura L. Pullum, Peter A. Kiss