Patents Examined by Li Zhen
  • Patent number: 8239821
    Abstract: An abstract component model can be used to drive an editor by providing an underlying stateful model for component implementation without the need to re-implement details, such as event listening, lifecycle and update management, etc. An implementation needs to provide objects that make up the model, some logic to listen to environmental changes and recognize when an update is needed, and a builder which can generate a lightweight version of the model based on the current “state of the world.” In addition, abstract component model is operable to support an editor such as page flow.
    Type: Grant
    Filed: May 1, 2008
    Date of Patent: August 7, 2012
    Assignee: Oracle International Corporation
    Inventors: Thomas A. Cook, Troy Beecroft, Thomas Carl Stamm
  • Patent number: 8239841
    Abstract: Prefetching irregular memory references into a software controlled cache is provided. A compiler analyzes source code to identify at least one of a plurality of loops that contain an irregular memory reference. The compiler determines if the irregular memory reference within the at least one loop is a candidate for optimization. Responsive to an indication that the irregular memory reference may be optimized, the compiler determines if the irregular memory reference is valid for prefetching. Responsive to an indication that the irregular memory reference is valid for prefetching, a store statement for an address of the irregular memory reference is inserted into the at least one loop. A runtime library call is inserted into a prefetch runtime library for the irregular memory reference. Data associated with the irregular memory reference is prefetched into the software controlled cache when the runtime library call is invoked.
    Type: Grant
    Filed: April 4, 2008
    Date of Patent: August 7, 2012
    Assignee: International Business Machines Corporation
    Inventors: Tong Chen, Marc Gonzalez tallada, Zehra N. Sura, Tao Zhang
  • Patent number: 8234635
    Abstract: In a multi-processor system for performing a parallel processing, each of a plurality of processors includes a communication processing unit for performing control between the processors in a data flow machine-type data-driven control method; and a program processing unit for performing control in each processor in a Neumann-type program-driven control method. The communication processing unit performs a communication between the processors in synchronization with the program processing unit, and has a function of detecting a communication data hazard between the processors. The program processing unit performs a processing based on an execution code stored in a local memory, and has a function of executing or suspending the execution code, according to a result of detecting the data hazard.
    Type: Grant
    Filed: January 16, 2007
    Date of Patent: July 31, 2012
    Assignee: Tokyo Institute of Technology
    Inventors: Tsuyoshi Isshiki, Hiroaki Kunieda
  • Patent number: 8230399
    Abstract: A method is provided which includes: facilitating intercepting a system call in user space by setting up signal handler code for executing operations related to the system call, and performing in the executing process, before execution of the system call, a SELF PTRACE request which sets system and self trace flags in the operating system kernel, wherein the self trace flag facilitates self-notifying the executing process whenever the executing process executes the system call; and intercepting the system call, including: verifying by the kernel that the system and self trace flags are set; saving and sending a signal to the signal handler conveying system call information to the user space; starting execution in user space of the signal handler; and at the end of signal handler execution, re-starting execution of the executing process, while providing system call return information to code of the executing process making the system call.
    Type: Grant
    Filed: October 4, 2007
    Date of Patent: July 24, 2012
    Assignee: International Business Machines Corporation
    Inventor: Marc Vertes
  • Patent number: 8225283
    Abstract: A computer-implemented method supporting collaborative product development. A plurality of artifacts associated with the collaborative product development is maintained under revision control in a first repository. Each artifact has a plurality of lifecycle states and each artifact is associated with a first finite state machine (FSM) that defines lifecycle state transitions for the artifacts. A plurality of artifact tuples associated with the collaborative product development is maintained under revision control in a second repository. At least one artifact tuple is comprised of at least one access information providing access to at least one of said plurality of artifacts in the first repository. Each artifact tuple has a plurality of lifecycle states and each artifact tuple is associated with a second finite state machine (FSM) that defines lifecycle state transitions for the artifact tuples.
    Type: Grant
    Filed: September 26, 2007
    Date of Patent: July 17, 2012
    Assignee: International Business Machines Corporation
    Inventors: Man Mohan Singh, Sai Zeng, Jose Gomes, Ioana Boier-Martin
  • Patent number: 8214799
    Abstract: A system-created variable object may expose a property of an object model to an internal object that does not have access to the object model directly. The system-created variable object may provide a mechanism for communicating the external state of an object model to an internal member (object) without exposing the object model to the internal object. This feature enables an object model object to be isolated, a concept that can be advantageously exploited.
    Type: Grant
    Filed: July 8, 2004
    Date of Patent: July 3, 2012
    Assignee: Microsoft Corporation
    Inventor: J. Kirk Haselden
  • Patent number: 8209660
    Abstract: A system and method for model driven software is disclosed. In one embodiment, the method of handling changes to a software system in a business environment includes capturing customer requirements of the software system in a schema, modeling business-software architecture of the software system in a first level of the schema, modeling design architecture of the software system in a second level of the schema, defining events that connect the first level and second level of the schema, defining links that represent interactions between the user interfaces, defining integration services for each of the events, mapping each element in the first level to a corresponding one of elements in the second level using the events, links and integration services, creating a knowledge repository with a traversable user interface representing the mappings, identifying changes to the software system, and analyzing impact of the changes using the knowledge repository.
    Type: Grant
    Filed: November 12, 2009
    Date of Patent: June 26, 2012
    Assignee: Ramco Systems Limited
    Inventors: Partasarathy Sundararajan, Shyamala Jayaraman, Suresh Sathiavageeswaran, Madusudanan Rajaraman, Srinivasan Ramaswamy, Krishnamoorthy Meenakshisundaram, Raghuram Devalla, Kannappan Gopalsamy
  • Patent number: 8209671
    Abstract: Computer program testing after source code for the computer program has been modified is performed more quickly, by using execution conditions. First, second, and third execution conditions are determined. These execution conditions are used to perform testing of the program to determine whether the program is properly functioning. Particularly, test data on which basis testing of the computer program is performed can be classified as first test data, second test data, third test data, or fourth test data. The program prior to modification of the source code is tested by employing the first, second, and third test data. After the source code is modified, the program is retested by employing only the third and the fourth test data. The program is thus properly retested after source code modification by employing only the third and the fourth test data, without having to employ the first and the second test data.
    Type: Grant
    Filed: July 13, 2008
    Date of Patent: June 26, 2012
    Assignee: International Business Machines Corporation
    Inventors: Takaaki Tateishi, Fumihiko Kitayama
  • Patent number: 8205192
    Abstract: Compiler device for optimizing program which manipulates a character string includes append instruction detection unit, store code generation unit, and append code generation unit. The append instruction detection unit detects an append instruction which appends a character string to a string variable for storing a character string, in the program. The store code generation unit generates, a substitute for each of a plurality of the append instructions detected by the append instruction detection unit, a store code for storing data of an appendant character string to be appended to the string variable by the append instruction into a buffer. The append instructions append the character strings to the same string variable. The append code generation unit generates append code for appending a plurality of the appendant character strings to the string variable, at a position executed before an instruction to refer to the string variable in the program.
    Type: Grant
    Filed: November 10, 2008
    Date of Patent: June 19, 2012
    Assignee: International Business Machines Corporation
    Inventors: Takeshi Ogasawara, Tamiya Onodera, Mikio Takeuchi
  • Patent number: 8201161
    Abstract: A system, method, and program product is provided that has a virtualized environment provided by a hypervisor. In the virtualized environment, one or more guest operating systems operate simultaneously with a privileged operating system. One of the guest operating systems identifies a device software update, such as a device driver or firmware update, corresponding to a hardware device that is attached to the computer system. The hypervisor is used to notify the privileged operating system of the device software update. When the privileged operating system is notified of the update, the privileged operating system uses one or more techniques to deny the guest operating systems access to the device. The privileged operating system then updates the device software update. After the device software update has been applied, the privileged operating system resumes access between the guest operating systems and the hardware device.
    Type: Grant
    Filed: January 7, 2008
    Date of Patent: June 12, 2012
    Assignee: Lenovo (Singapore) Pte. Ltd.
    Inventors: David Carroll Challener, Mark Charles Davis, Randall Scott Springfield, Rod David Waltermann
  • Patent number: 8196113
    Abstract: Some embodiments of the present invention provide a system that tests a software program. During operation, the system creates a behavioral model of the software program using branches, decisions, and options. Next, the system applies a weight assignment technique to the behavioral model to create a set of global identifiers (IDs), which correspond to test cases of the behavioral model. The system then generates a test case from the behavioral model and executes the test case on the software program. Finally, the system analyzes an output of the executed test case to determine a validity of the software program.
    Type: Grant
    Filed: January 29, 2008
    Date of Patent: June 5, 2012
    Assignee: Intuit Inc.
    Inventors: Michael D. Miller, Ryan R. Ulaszek
  • Patent number: 8196098
    Abstract: A system for managing temporary processing agents. A first code routine is provided as an empty routine in an agent including first executable code, the empty routine consisting of non-executable code. A programming component selectively loads second executable code to the first routine for converting the empty routine to a populated routine. A code element issues a call to the first routine. An agent execution component is responsive to the first routine being a populated routine for executing the second executable code.
    Type: Grant
    Filed: January 3, 2006
    Date of Patent: June 5, 2012
    Assignee: International Business Machines Corporation
    Inventors: Scott D. Hicks, James A. Martin, Jr.
  • Patent number: 8191059
    Abstract: A system, method and computer program product are provided for installing at least a portion of a program. In use, an installation process is modeled as a workflow. Further, at least a portion of a program is installed utilizing the workflow. In one optional embodiment, at least the portion of the program may include an upgrade to a pre-existing program.
    Type: Grant
    Filed: August 10, 2006
    Date of Patent: May 29, 2012
    Assignee: Amdocs Software Systems Limited
    Inventors: Giora Litman, Ran Efrat, Yishay Levanoni
  • Patent number: 8185874
    Abstract: A library or application is selected comprising one or more functions or methods. An interesting subset of the functions or methods is created. A plurality of multi-threaded test cases are generated from the subset of interesting functions or methods, with each test case comprising a unique pair or triple of functions or methods from the subset. The resulting set of test cases may then be filtered of thread safe test cases using static analysis techniques. The filtered set of test cases is then used as an input to a specialized application that executes each of the multi-threaded test cases to detect atomicity violations and race conditions. The results of the execution of each of the test cases by the specialized application are then aggregated and presented to a user or administrator in a report, for example.
    Type: Grant
    Filed: November 7, 2006
    Date of Patent: May 22, 2012
    Assignee: Microsoft Corporation
    Inventors: Thomas J. Ball, Yuan Yu, Shuvendu K. Lahiri
  • Patent number: 8176471
    Abstract: A system and method for creating a graphical program utilizing one or more nodes which are statically bound to one or more virtual instruments (VIs). The system and method for static binding provides a way to interact individually with controls and indicators of a VI running asynchronously, wherein the values read and written are strictly typed to the data type of the control. The overhead of dynamic invocation may be substantially eliminated to allow for greater efficiency.
    Type: Grant
    Filed: January 7, 2005
    Date of Patent: May 8, 2012
    Assignee: National Instruments Corporation
    Inventor: Matthew E. Novacek
  • Patent number: 8171470
    Abstract: This specification describes technologies relating to software installation. In general, a method of installing software can include obtaining a first installation package distributed for installation on multiple different platforms, the first installation package including program content and package information, the package information including information stored in a platform independent format and useable in an installation sequence; converting the first installation package into a second installation package stored in a format native to a target platform, wherein the second, native installation package includes at least a portion of the program content and the information useable in the installation sequence; and initiating installation on the target platform with the second, native installation package.
    Type: Grant
    Filed: August 29, 2006
    Date of Patent: May 1, 2012
    Assignee: Adobe Systems Incorporated
    Inventors: Oliver Goldman, Chris Brichford, Ethan Malasky
  • Patent number: 8171486
    Abstract: A method is described that involves creating an instance of a software component for the substantially private use of a thread. A determination of whether to access an instance of a software component from one of a private software component instance collection and a software component instance pool is made, the private software component instance collection configured to include an instance of the software component that is not synchronized with an additional thread of the computer program, the software component instance pool configured to include an instance of the software component that is synchronized with the additional thread of the computer program, the determination based on a number of other threads accessing the software component instance pool and a complexity of whether the instance of the software component is to execute at least one of a single task and a few simple tasks.
    Type: Grant
    Filed: September 21, 2005
    Date of Patent: May 1, 2012
    Assignee: SAP AG
    Inventor: Hristo K. Sabev
  • Patent number: 8171455
    Abstract: A test sequencer software application and method for management and execution of sequence items. The test sequencer software application includes a management module and an execution module. The management module has capabilities of obtaining multiple sequence items definitions, of obtaining configuration information, of creating multiple lists of ordered sequence items from the sequence items definitions, and of separately linking each list of sequence items to one of multiple sequence engines from the configuration information. The execution module includes a sequencer controller module and the multiple sequence engines. The sequence controller module activates each of the multiple sequence engines in a preselected order and each sequence engine executes the ordered sequence items in each list linked to that sequence engine.
    Type: Grant
    Filed: August 13, 2004
    Date of Patent: May 1, 2012
    Assignee: Agilent Technologies, Inc.
    Inventor: Thomas R. Fay
  • Patent number: 8166453
    Abstract: A method and system for inconsistency resolution in a model-driven software development environment are provided. A method includes performing a safety analysis for resolutions in response to detected inconsistencies to determine whether the resolution, if implemented, will lead to a resolution cycle when applied to a given inconsistency. The determination includes processing a resolution tree for the inconsistency and, using a resolution strategy tree, for each resolution that resolves an inconsistency, analyzing whether beginning with the resolution, it is possible to resolve all the inconsistencies subsequently introduced as side effects without a resolution cycle occurring. The analysis includes traversing the resolution strategy tree, whereby all resolution strategies derived by traversing the resolution strategy tree lead to a resolution cycle if the resolution strategy tree is infinite.
    Type: Grant
    Filed: January 21, 2008
    Date of Patent: April 24, 2012
    Assignee: International Business Machines Corporation
    Inventors: Jochen M. Kuester, Ksenia Ryndina
  • Patent number: 8166457
    Abstract: A method of implementing a complete SAP system landscape on IBM System i is provided. This method involves preselecting at least one value-added reseller (VAR) for participation in implementing the complete SAP system landscape on IBM System i. The VAR then selects values for flexible parameters according to needs of a customer. The flexible parameters include languages for i5/OS and SAP, an amount of SAP ERC Central Component (ECC) systems ranging from one to three, an inclusion of a SAP Solution Manager, a client landscape, a configuration of SAP systems, and a level of software stack. The level of software stack includes a layer of the SAP systems, a layer implementing country-specific configuration, a layer implementing industry-specific configuration, and a layer of VAR added value. Media is created and implemented with the specified content at a factory using standard SAP procedures. A full backup of the SAP systems is then created using standard i5/OS operating system imaging.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: April 24, 2012
    Assignee: International Business Machines Corporation
    Inventors: Barbara Susanne Roth, James E. Anderson, Michael Bernd Koerner, Ron Schmerbauch, Manfred Hoeschele, Christian Bartels