Patents Examined by Paul Mills
  • Patent number: 7844952
    Abstract: A debugger display groups threads according to user-specified criteria. The threads may be grouped by type, by current or historic breakpoints, according to historical debug patterns, based on what thread spawned the thread, based on execution pattern, based on object class in a Java environment, based on Java thread group in a Java environment, or base on other suitable criteria. The grouping of threads is displayed graphically to a user of the debugger, thereby allowing more efficient debugging of multi-threaded computer programs.
    Type: Grant
    Filed: December 22, 2005
    Date of Patent: November 30, 2010
    Assignee: International Business Machines Corporation
    Inventors: Eric Lawrence Barsness, John Matthew Santosuosso
  • Patent number: 7836433
    Abstract: The present invention extends to methods, systems, and computer program products for analyzing binary code. Binary code is received. Code analysis rules indicative of a query related to the functionality of the binary code are received. The query is implemented in analysis code configured to determine results of the query. It is determined if valid cached results for the query are cached in a results store. If not, the analysis code is invoked to determine the results for the query and the results are cached. Accordingly, when the query is received in the future, the results can be accessed from the results store without having to invoke the analysis code to determine the results. If so, the cached results are retrieved so as to avoid further invocation of the analysis code. The results are returned.
    Type: Grant
    Filed: January 26, 2006
    Date of Patent: November 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Michael C. Fanning, Nicholas P. Guerrera, Jeffrey van Gogh
  • Patent number: 7827539
    Abstract: A tracing system that provides automated tuning of execution tracing by adjusting the collection of trace data is described. In one embodiment, the user sets an initial tracing profile for a tracing program. In addition, the user sets an upper limit for the tracing performance penalty. The auto-tuning system monitors the performance penalty induced by tracing and, when the performance impact is excessive, removes trace points that are causing the most impact on performance. Auto tuning is especially useful for performing software recording in mission-critical and/or time-critical applications, such as servers, real-time applications, etc. The system typically adjusts relatively quickly such that most users do not feel the influence of the tracer.
    Type: Grant
    Filed: June 23, 2005
    Date of Patent: November 2, 2010
    Assignee: Identify Software Ltd.
    Inventors: Shlomo Wygodny, David Elkind, Moshe Kravchik
  • Patent number: 7823140
    Abstract: A Java bytecode translation method and a Java interpreter performing the Java bytecode translation method are provided. The Java bytecode translation method includes extracting a number of successive Java bytecodes from a Java class, determining whether the extracted successive Java bytecodes are successive field access bytecodes for accessing a field in the Java class and translating the extracted successive Java bytecodes into predefined bytecode if the extracted successive Java bytecodes are determined to be the successive field access bytecodes, and executing the predefined bytecode.
    Type: Grant
    Filed: September 22, 2005
    Date of Patent: October 26, 2010
    Assignee: Samsung Electronics Co., Ltd.
    Inventor: Seung-bum Chung
  • Patent number: 7774769
    Abstract: In one embodiment, the present invention includes a method for partitioning a program segment into at least a first stage and a second stage, determining a live set of variables and control flow information alive at a boundary between the first and second stages, and controlling the first stage to transmit a trace-specific portion of the live set for a first trace to the second stage via a communication channel. In such manner, reduced transmission of data between the stages is effected. Other embodiments are described and claimed.
    Type: Grant
    Filed: September 22, 2005
    Date of Patent: August 10, 2010
    Assignee: Intel Corporation
    Inventors: Xiaodan Jiang, Jinquan Dai
  • Patent number: 7770164
    Abstract: Interactive software applications are upgraded at a remote service center. The software applications are used at customer locations. Each software application may rely upon customer specific data and customer protocols. Periodically, a revised version of a software application becomes available for use. The customer specific data and/or customer protocols that the previous version of the software application implemented at a customer location may be identified at the remote service center. Subsequently, the revised version of the software application may be modified at the remote service center using the customer specific data and/or customer protocols. The modified revised software application may be transferred to the customer location for installation. The customer specific data may pertain to user interface settings of the software application.
    Type: Grant
    Filed: May 31, 2005
    Date of Patent: August 3, 2010
    Assignee: Siemens Aktiengesellschaft
    Inventors: Horst Schuelein, Klaus Gartner, Gerhard Strobl
  • Patent number: 7757225
    Abstract: A method and apparatus are disclosed for optimizing the runtime behavior of database or other applications by allowing selection of alternative code segments during linking of pre-compiled object modules. A macro-preprocessor inserts a declaration for a global variable in the source code in response to an occurrence of a command of interest. The linker selects object modules for executing other commands based on the presence or absence of the declaration for the global variable in the preprocessed source code. The method and apparatus are useful in implementing programming language statements including non-procedural programming languages such as the Embedded Structured Query Language (ESQL).
    Type: Grant
    Filed: June 29, 2001
    Date of Patent: July 13, 2010
    Assignee: Microsoft Corporation
    Inventors: Jeffrey L. Copeland, Jason D. Zions, Donn S. Terry
  • Patent number: 7752606
    Abstract: Systems and methods are provided for the automated development and implementation of software using parameter-based requirements. Such systems and methods may include acquiring terms usable to create a parameter-based requirement, in which each of the terms contains at least one attribute, and storing a glossary containing the terms. The systems and methods may further include collecting a system requirement from a user based on the terms stored in the glossary, generating the parameter-based requirement based on the terms stored in the glossary and the system requirement, and creating an artifact based on the parameter-based requirement.
    Type: Grant
    Filed: August 10, 2005
    Date of Patent: July 6, 2010
    Assignee: Capital One Financial Corporation
    Inventor: Andrew Francis Savage
  • Patent number: 7730450
    Abstract: System and method for automatic versioning and data mutation for user-defined data types. A program development environment may be operable to: create a first version of a data type definition in response to user input; instantiate and store an object of the first version of the data type, optionally including a version identifier indicating the version of the object; modify the first version of the data type definition in response to user input, thereby creating a second version of the data type definition; load the object from storage; and automatically (without user intervention) modify the object to conform to the second version of the data type definition. Successive modifications of the data type definition may generate successive versions of the data type. Objects instantiated and stored according to a previous version of the data type may be loaded from storage and automatically modified to conform to a specified subsequent version.
    Type: Grant
    Filed: January 31, 2005
    Date of Patent: June 1, 2010
    Assignee: National Instruments Corporation
    Inventor: Stephen R. Mercer
  • Patent number: 7730475
    Abstract: Methods, systems, and computer program products for editing configuration data such that alterations in one representation of the configuration data are reflected in one or more other representations of the configuration data. The altered configuration data may take effect without having to restart a corresponding program module. Multiple alterations to the configuration data may be consolidated. A differencing operation may be used to identify an altered portion of the configuration data. For one or more altered portions, an “updategram” may be generated and used to update a multiple program modules at various interconnected computer systems. A history of alterations to configuration data also may be maintained, making it possible to revert to an earlier version of the configuration data. Erroneous data may be ignored. Access to updated representations of the configuration data may be provided at a configuration management interface.
    Type: Grant
    Filed: October 14, 2005
    Date of Patent: June 1, 2010
    Assignee: Microsoft Corporation
    Inventors: Richard A. Ersek, Robert M. Craig, William J. Staples, Mohit Srivastava, Varsha Jayasimha, Stephen L. Rakonza
  • Patent number: 7716657
    Abstract: A method for compiler optimization particularly well suited to object-oriented language that permit dynamic class loading. The method permits the compiler optimization of code associated with a potentially polymorphic object that is a call parameter to a virtual procedure where the procedure is a candidate for devirtualization through inlining. The method includes steps for guarded devirtualizing of the procedure, insertion of code to ensure privatization of the object before the procedure is executed, creation of a guard assumptions associated with the object and application of known optimization techniques to the code associated with the object.
    Type: Grant
    Filed: October 28, 2004
    Date of Patent: May 11, 2010
    Assignee: International Business Machines Corporation
    Inventors: Derek Bruce Inglis, Ali Ijaz Sheikh
  • Patent number: 7694290
    Abstract: A method and system to optimize throughput of executable program code are provided. The system comprises a profiler to receive a representation of a plurality of functions, an aggregator, and a mapper to map the plurality of aggregates to a plurality of processors. The aggregator may be configured to create an aggregate for each function from the plurality of functions thereby creating a plurality of aggregates, choose an optimization action between grouping and duplication based on the number of aggregates in the plurality of aggregates, the number of available processing elements (PEs), and execution time of each aggregate, and perform the chosen optimization action.
    Type: Grant
    Filed: September 1, 2005
    Date of Patent: April 6, 2010
    Assignee: Intel Corporation
    Inventors: Lixia Liu, Dz-ching (Roy) Ju, Michael K. Chen
  • Patent number: 7614046
    Abstract: A method and system for analyzing the impact on software of an update to a software system is provided. The impact analysis system identifies resources that are affected by an update to the software system and identifies resources that are accessed by various software components during execution of the software components. To analyze the effects of an update, the impact analysis system identifies those accessed resources of the software components that are affected by the update as being impacted resources. The impact analysis system considers those software components that access the impacted resources to be impacted software components. The impact analysis system provides a user interface through which a user can view and analyze the impact of an update.
    Type: Grant
    Filed: November 24, 2004
    Date of Patent: November 3, 2009
    Assignee: Microsoft Corporation
    Inventors: Bradford Ruffin Daniels, John Dunagan, Roussi A. Roussev, Chad E. Verbowski, Yi-Min Wang