Patents Examined by Tuan Dam
  • Patent number: 8171456
    Abstract: A method is provided for auditing compliance of an electronic platform, referred to as the platform being tested, and/or a computer program being tested, which is present on the platform being tested. The method includes the following steps: transmitting the same data set, via an auditing device, to the platform being tested, on the one hand, and, on the other hand, to a compliant reference platform present in the auditing device; and deciding upon the compliance of the platform being tested and/or the computer program being tested, based on an analysis of the respective behaviors of the platform being tested and the reference platform. The auditing device then issues a compliance decision.
    Type: Grant
    Filed: December 21, 2007
    Date of Patent: May 1, 2012
    Assignee: Compagnie Industrielle et Financiere d'Ingenierie “Ingenico”
    Inventor: David Naccache
  • Patent number: 8171452
    Abstract: Methods and apparatus, including computer program products, for accepting user input defining a first modification at a first enhancement point of a first source code component, the first source code component not being modified. Creating a second source code component for the first enhancement point, the second source code component being separate from the first source code component. Incorporating into the second source code component the first source code component and an expression of the first modification. And creating a compiled program using the second source code component.
    Type: Grant
    Filed: December 30, 2005
    Date of Patent: May 1, 2012
    Assignee: SAP AG
    Inventors: Eveline H. Crasovan, Michael Acker, Juergen K. Remmel, Thomas Fiedler
  • Patent number: 8166461
    Abstract: A system/method for profiling a sequence of values from a range to determine a frequency of occurrence of a subrange includes, for a current block, determining whether cells of the current block include a count cell or a pointer cell. If the cell includes a pointer cell, follow an address that the pointer makes reference to and designate a new block as the current block and repeat the determining step for the new block. If the cell includes a count cell, increment the count cell and compare the incremented count cell to a threshold. If the count exceeds the threshold, convert the count cell to a pointer cell, which points to a newly allocated block. The newly allocated block is made the current block, and the steps are repeated until count cells do not exceed the threshold or a limit resolution is achieved.
    Type: Grant
    Filed: June 3, 2008
    Date of Patent: April 24, 2012
    Assignee: International Business Machines Corporation
    Inventor: Michel Henri Theodore Hack
  • Patent number: 8166468
    Abstract: A computer implemented method, computer program product, and data processing system for reducing the number of inner classes in a compiled computer program written in an object-oriented programming language. An outer class of the compiled computer program is received, wherein the outer class contains an inner class, wherein the outer class comprises instructions to create an instance of an inner class. The instance is to be used as one of a callback, a listener command, a set of instructions by which an object instance of the inner class transfers information to the corresponding containing instance of the outer class, and combinations thereof. A transformation of the outer class is performed by moving methods of the inner class, as well as their contained instructions, into the outer class. The behavior of the compiled computer program remains unchanged.
    Type: Grant
    Filed: November 30, 2007
    Date of Patent: April 24, 2012
    Assignee: International Business Machines Corporation
    Inventors: Sean Christopher Foley, Berthold Martin Lebert
  • Patent number: 8161469
    Abstract: Compiled configuration files for different programmable logic devices that are intended to be functionally equivalent may be compared using multiple different comparisons to assure functional equivalence. The different comparisons include a fitter or resource report comparison, an engineering bit settings report that compares vectors of bits that represent the settings of hard logic blocks, and comparisons based on location, connectivity and functionality. These comparisons are particularly well-suited for determining equivalence between different models of programmable logic devices, or even different types of devices such as field-programmable gate arrays as compared to mask-programmable logic devices.
    Type: Grant
    Filed: December 13, 2005
    Date of Patent: April 17, 2012
    Assignee: Altera Corporation
    Inventors: Mihail Iotov, Erhard Joachim Pistorius, Jim Park, David Karchmer
  • Patent number: 8161463
    Abstract: A method for rendering software resistant to reverse engineering. Replace at least one first constant (mathematical expression, etc.) in a computational expression with a second mixed mathematical and bitwise-Boolean expression, the first constant being simpler than the second expression and the second expression being based on the value or the variables found in the first constant (or expression).
    Type: Grant
    Filed: October 31, 2007
    Date of Patent: April 17, 2012
    Assignee: Irdeto Canada Corporation
    Inventors: Harold Joseph Johnson, Yuan Xiang Gu, Yongxin Zhou
  • Patent number: 8156468
    Abstract: An object-oriented, computer-based system for developing simulation models is provided. The system comprises one or more base objects and one or more graphical processes, wherein new objects are created from base objects by a user by assigning one or more graphical processes to the base object(s). New objects are created without the need for methods or computer programming. A model is built by creating objects that represent the physical components of the system being modeled into the model, and then running the model.
    Type: Grant
    Filed: May 22, 2009
    Date of Patent: April 10, 2012
    Assignee: Simio LLC
    Inventor: Claude Dennis Pegden
  • Patent number: 8156489
    Abstract: Distributed installation configuration system and method are provided. The system and method in one aspect collects information about all products and components being installed from a centralized user interface, before the actual installation is performed, regardless of the target machine locations. The collected information is then stored centrally. Thereafter, subsequent installations, whether on the same or different machine locations, access this information for the subsequent installation procedure.
    Type: Grant
    Filed: May 21, 2004
    Date of Patent: April 10, 2012
    Assignee: Computer Associates Think, Inc.
    Inventor: Travis David Kane
  • Patent number: 8146073
    Abstract: To avoid extensive time during which servicing of clients' requests is stopped for updating a piece of software or a data structure, various embodiments of the invention update an instance of the piece of software or an instance of the data structure instead of updating the original piece of software or the data structure. This allows the original piece of software or the data structure to service clients' requests without interruption. The updated instance begins to service clients' requests without losing context while the original piece of software or the data structure is terminated from further operation.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: March 27, 2012
    Assignee: Microsoft Corporation
    Inventor: Suyash Sinha
  • Patent number: 8146054
    Abstract: Computer implemented method, system and computer usable program code for processing a data object, for example, for searching for, creating or updating a data object. A computer implemented method for processing a data object includes receiving a request for the data object. A static portion and a dynamic portion for the data object are determined, and an instruction for the static portion and an instruction for the dynamic portion are processed separately. To search for a data object, a result from processing an instruction for the static portion and a result from processing the instruction for the dynamic portion are merged to form a hybrid data object. To create or update a data object, a result from processing an instruction for the static portion and a result from processing the instruction for the dynamic portion is saved in a database.
    Type: Grant
    Filed: December 12, 2006
    Date of Patent: March 27, 2012
    Assignee: International Business Machines Corporation
    Inventors: Ronald Bruce Baker, Jinfang Chen, Benjamin Nelson Jeffcoat, Sushma Bharat Patel, Shaw-Ben Shepherd Shi
  • Patent number: 8146070
    Abstract: Inter-procedural strength reduction is provided by a mechanism of the present invention to optimize software program. During a forward pass, the present invention collects information of global variables and analyzes the information to select candidate computations for optimization. During a backward pass, the present invention replaces costly computations with less costly or weaker computations using pre-computed values and inserts store operations of new global variables to pre-compute the costly computations at definition points of the global variables used in the costly computations.
    Type: Grant
    Filed: November 13, 2008
    Date of Patent: March 27, 2012
    Assignee: International Business Machines Corporation
    Inventors: Roch Georges Archambault, Shimin Cui, Raul Esteban Silvera
  • Patent number: 8146100
    Abstract: A method including receiving a plurality of event descriptors, each event descriptor of the plurality of event descriptors corresponding to a respective event relevant to a software development process, transmitting the plurality of event descriptors to a subscriber; and receiving a subscription message from a subscriber, the subscription message including an indication of an event descriptor selected from the plurality of event descriptors.
    Type: Grant
    Filed: March 21, 2006
    Date of Patent: March 27, 2012
    Assignee: SAP AG
    Inventor: Roger Kilian-Kehr
  • Patent number: 8146058
    Abstract: Quality of modularization of source code is tested using different perspectives such as a structural modularity perspective, an architectural modularity perspective, a size perspective, and a similarity of purpose perspective. A history of changes in modularization may be kept such that the degree to which given source code is well-modularized can be determined over time. The changes made to the code by individual programmers may be kept, such that the degree to which their coding enhanced or harmed modularization may be tracked.
    Type: Grant
    Filed: December 15, 2006
    Date of Patent: March 27, 2012
    Assignee: Infosys Limited
    Inventors: Santonu Sarkar, Girish Maskeri Rama, Nagaraja Nanjegowda Siddaramappa, Avinash C. Kak, Shubha Ramachandran
  • Patent number: 8141051
    Abstract: Methods, apparatus, and articles of manufacture to perform runtime trace filtering associated with application performance analysis are disclosed. A disclosed example method involves generating a first performance value based on first performance data associated with a first function of a first application process. A difference value is generated based on the first performance value and a historical performance value associated with the first function. The difference value is compared to a threshold value, and first trace data associated with execution of the first application process is collected based on the comparison of the difference value to the threshold value.
    Type: Grant
    Filed: December 29, 2006
    Date of Patent: March 20, 2012
    Assignee: Intel Corporation
    Inventors: Eric Jian Huang, Hu Chen, Wenguang Chen, Robert Kuhn
  • Patent number: 8141063
    Abstract: Exemplary embodiments of the present invention comprise an algorithm described herein that utilizes a technique to shrink a set of potentially reachable elements to a close approximation of the actually reachable elements within a software application by closely approximating how the application executes at runtime. The algorithm attempts to identify all of the reachable elements of an object-oriented software application by starting with the entry points into the application and thereafter progressively determining all of the software elements within the application that are reachable. The algorithm instantiates application objects in the same way they would be instantiated at runtime and passes references to these objects from one method and field to the next; emulating as closely as possible object instantiation performed by the application at runtime.
    Type: Grant
    Filed: August 30, 2007
    Date of Patent: March 20, 2012
    Assignee: International Business Machines Corporation
    Inventor: Sean C. Foley
  • Patent number: 8132162
    Abstract: A runtime machine manages a selected disk space allocated to the runtime machine by the operating system and manages a separate method cache within the selected virtual disk space. The runtime machine controls caching within the method cache of a separate result of at least one method of the application marked as cache capable. For a next instance of the method detected by the runtime machine, the runtime machine accesses the cached separate result of the method in lieu of executing the method again. The runtime machine marks a method as cache capable by analyzing the types of objects within the argument object graph and result object graph of a method. If the runtime machine detects only primitive type objects, then the runtime machine marks the method so that the result of the method will be stored in the method cache.
    Type: Grant
    Filed: July 5, 2007
    Date of Patent: March 6, 2012
    Assignee: International Business Machines Corporation
    Inventor: Robert R. Peterson
  • Patent number: 8132150
    Abstract: A method and computer readable medium for automatic replacement of object classes in a library with custom classes to improve program efficiency. The method begins with static analysis preformed on a program containing a plurality of objects in order to determine type-correctness constraints and to detect unused functionality in one or more of the objects to be replaced. The plurality of objects is instrumented to detect usage patterns of functionality in one or more objects. Customized classes are generated based upon the static analysis and usage patterns detected. Bytecode is rewritten which is used for generating classes. The present invention provides transparency in the replacement of the objects.
    Type: Grant
    Filed: February 20, 2008
    Date of Patent: March 6, 2012
    Assignee: International Business Machines Corporation
    Inventors: Bjorn De Sutter, Julian Dolby, Frank Tip
  • Patent number: 8122430
    Abstract: A method and computer readable medium for automatic replacement of object classes in a library with custom classes to improve program efficiency. The method begins with static analysis preformed on a program containing a plurality of objects in order to determine type-correctness constraints and to detect unused functionality in one or more of the objects to be replaced. The plurality of objects is instrumented to detect usage patterns of functionality in one or more objects. Customized classes are generated based upon the static analysis and usage patterns detected. Bytecode is rewritten which is used for generating classes. The present invention provides transparency in the replacement of the objects.
    Type: Grant
    Filed: October 29, 2007
    Date of Patent: February 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Bjorn De Sutter, Julian Dolby, Frank Tip
  • Patent number: 8117600
    Abstract: A system, method, and computer-accessible medium are disclosed for identifying in-line synchronization instructions in binary program code. One or more executable segments of the binary program code may be scanned to identify one or more potential in-line synchronization instructions. For each potential in-line synchronization instruction, it may be determined whether neighboring potential instructions are valid instructions. For each potential in-line synchronization instruction, it may be determined that the potential in-line synchronization instruction is a valid in-line synchronization instruction if the neighboring potential instructions are valid instructions.
    Type: Grant
    Filed: December 29, 2005
    Date of Patent: February 14, 2012
    Assignee: Symantec Operating Corporation
    Inventors: Guenter E. Roeck, Serge Shats
  • Patent number: 8112744
    Abstract: A system for self-assembling software components is described herein. In one embodiment, a system includes a first and second set of language components, where each language component defines at least one part of language runnable on a computer by associating a piece of grammar of the language with at least one software component that implements the piece of grammar. The system further includes a request broker that upon being provided with a section of code written in the language matches syntactic appearances of the first set of language components in the section of code and granting logic to grant access to the language components of the first set whose syntactic appearances the request broker matched, in order to enable self-assemblage of the language components of the first set with language components of the second set.
    Type: Grant
    Filed: January 11, 2008
    Date of Patent: February 7, 2012
    Assignee: dLoo, Inc.
    Inventor: Nile Josiah Geisinger