Patents Examined by Hanh T Bui
  • Patent number: 8997062
    Abstract: Provided are techniques for receiving an error inject script that describes one or more error inject scenarios that define under which conditions at least one error inject is to be executed and compiling the error inject script to output an error inject data structure. While executing code that includes the error inject, an indication that an event has been triggered is received, conditions defined in the one or more error inject scenarios are evaluated using the error inject data structure, and, for each of the conditions that evaluates to true, one or more actions defined in the error inject script for the condition are performed.
    Type: Grant
    Filed: May 7, 2012
    Date of Patent: March 31, 2015
    Assignee: International Business Machines Corporation
    Inventor: Cheng-Chung Song
  • Patent number: 8978028
    Abstract: Described is installing multiple software packages to a computing device in a single transaction, whereby the multiple package installation commits if successful, or the device is rolled back to a determined state if unsuccessful. A client process provides a system service (installer) with a package, and the service partitions package installation actions into execution, commit and rollback phases, with the execution phase run for each package. If successful, the transaction is committed by performing the multiple commit phases. If unsuccessful, the installation is rolled back via the rollback phases. The phases may be interleaved, with execution and commit phases performed in FIFO order, and rollback phases performed in LIFO order. A client process may dynamically determine which packages to install, a client process may be embedded in a package and join the transaction, and/or one client process may delegate control to another client to add package actions to the transaction.
    Type: Grant
    Filed: October 10, 2007
    Date of Patent: March 10, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Robert Charles Flaming, Hemchander V. Sannidhanam, Venkata Kiran Kumar Annamraju, William L. Cheng, Kin Yip Kenneth Wong, Carolyn L. Napier
  • Patent number: 8959493
    Abstract: Embodiments of the present invention provide a method, system and computer program product for USING range validation during assembly of an assembly language program. In an embodiment of the invention, a method for USING range validation during assembly of an assembly language program has been provided. The method can include parsing assembler language source code loaded for assembly in an assembler executing in memory of a computer. The method also can include identifying a USING statement in the source code establishing a base address as the content of a register. Finally, in response to additionally identifying a subsequent statement in the source code that modifies the content of the register, a warning of an invalid USING range can be generated.
    Type: Grant
    Filed: June 27, 2011
    Date of Patent: February 17, 2015
    Assignee: International Business Machines Corporation
    Inventors: David J. Harman, Brian Johnson, David Knibb, Andrew Wright
  • Patent number: 8949819
    Abstract: A method of dynamically offering upgraded services in a network comprising functions, the method comprising a computer performing the steps of: applying a similar functionality analysis on the functions of a network; retrieving the plurality of functions stored by the similar functionality analysis from the repository, and creating a pivot table; categorizing the functions within the pivot table; filtering the pivot table by a functional area of the pivot table; recreating the pivot table based on the functional area; and differentiating the exposable functions within the pivot table from non-exposable functions by attributes of the functions.
    Type: Grant
    Filed: September 27, 2012
    Date of Patent: February 3, 2015
    Assignee: International Business Machines Corporation
    Inventors: Abdul Allam, Jaime M. Gonzalez Lojero, Jesus Godinez Ramirez, Francisco R. Huizar Rodriguez
  • Patent number: 8935676
    Abstract: A test controller performs a test of a test-target component of a test-target system so as to generate at least one fail event indicating a possible fault in the test-target component. A trouble-shooting and analysis tool probes the test controller and/or hardware of the test-target system to investigate potential causes of the fail event other than a fault of said software component. The trouble-shooting and analysis tool then analyzes fail data including probe data to evaluate potential causes of the fail event.
    Type: Grant
    Filed: August 7, 2011
    Date of Patent: January 13, 2015
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Guy Verbest
  • Patent number: 8930937
    Abstract: A client computer sends application information about a software application to a server system. The server system performs a comparison between the application information about the software application and the most-updated upgrade package for the software application. The most-updated upgrade package for the software application is stored in a part database. The most-updated upgrade package for the software application is received by the client system automatically when the comparison indicates that the most-updated upgrade package has not been installed on the client system. A client database stores a plurality of configuration files for a plurality of client systems. A first configuration file provides the sever system with the knowledge of the software applications installed on the client system. The application information about the software application comprises version information of the software applications and is stored in a database in the client system.
    Type: Grant
    Filed: March 8, 2012
    Date of Patent: January 6, 2015
    Assignee: Dell Marketing L.P.
    Inventors: Jed McCaleb, Russel Rive
  • Patent number: 8918755
    Abstract: An enterprise software system provides dynamic code generation techniques that facilitate quick and efficient resolution of multi-dimensional data demands. The system includes an object store that stores a first object that references multi-dimensional data and an object model that receives a request for multi-dimensional data referenced by the first object. The object model causes the first object to dynamically generate a portion of the executable software instructions for a second object in response to the request and instantiate the second object within the object store. The dynamically generated portion of the instructions enables the second object to calculate a memory address into the multi-dimensional data referenced by the first object. The second object utilizes the dynamically generated portion of the instructions to satisfy the request. Because the second object maintains direct access to the multi-dimensional data, it need not make costly and time consuming function calls to the first object.
    Type: Grant
    Filed: January 30, 2007
    Date of Patent: December 23, 2014
    Assignee: International Business Machines Corporation
    Inventors: Rasmus Borgsmidt, Michael Gould
  • Patent number: 8918772
    Abstract: One embodiment of the present invention provides a system that uses static analysis to determine program correctness for a program written in a dynamic programming language. During operation, the system receives executable code for a program written in the dynamic programming language. The system identifies a program method called in the executable code, and determines if the program method is implemented for the executable code. If not, the system signals that the program method is not implemented for the executable code.
    Type: Grant
    Filed: July 25, 2007
    Date of Patent: December 23, 2014
    Assignee: Google Inc.
    Inventors: David MacLachlan, Greg Miller
  • Patent number: 8910151
    Abstract: A method for installing software components includes: a terminal receives a software component package delivered by a Device Management (DM) server directly or a download address of the component package and a command instructing to download delivered by the DM server, where the software component package contains more than one software component; if the terminal receives the download address and the command instructing to download, the terminal downloads the software component package from the download address; the terminal installs the obtained software component package locally and generates management nodes and subnodes of the management nodes corresponding to the software components under a Deployed subtree of the Software Component Management Object (SCOMO) of the terminal. With the present invention, the process of installing software component is more reasonable. A system and apparatus for installing software components are also provided.
    Type: Grant
    Filed: July 18, 2012
    Date of Patent: December 9, 2014
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Shouling Cui, Xiaoqian Chai, Linyi Tian, Kepeng Li
  • Patent number: 8881138
    Abstract: A first region and a second region of a display device graphically represent a first folder and a second folder, respectively, of a computer-readable storage medium. A computer software installation comprises installing a plurality of files in the first folder and installing at least one file in the second folder. A first graphical progress indicator that is within the first region and whose shape is at least partially defined by a first line segment, a second line segment, and an approximately circular first arc graphically represents progress of said installing the plurality of files in the first folder. A second graphical progress indicator that is within the second region and whose shape is at least partially defined by a third line segment, a fourth line segment, and an approximately circular second arc graphically represents progress of said installing the at least one file in the second folder.
    Type: Grant
    Filed: July 12, 2013
    Date of Patent: November 4, 2014
    Inventor: Cary D. Perttunen
  • Patent number: 8875122
    Abstract: The current subject matter provides a method to upgrade an individual tenant by moving the individual tenant from a source computing system that implements an older software version to a target computing system that implements a newer software version. The movement of the individual tenant incorporates a movement of customer-specific data associated with the moved tenant. Instead of just upgrading a same multi-tenancy computing system implementing the tenant that needs to be upgraded, a new (target) multi-tenancy computing system implementing a newer software version is installed such that this tenant can be moved from the (source) multi-tenancy computing system to the new (target) multi-tenancy computing system. The data associated with the moved tenant is adjusted to new structures associated with the newer software version.
    Type: Grant
    Filed: December 30, 2010
    Date of Patent: October 28, 2014
    Assignee: SAP SE
    Inventors: Volker Driesen, Lars Spielberg, Peter Eberlein, Andrey Engelko, Joerg Schmidt, Thomas Vogt
  • Patent number: 8869137
    Abstract: An information processing apparatus includes a display device; a storage device storing a program that includes a main program and N subsequent programs, and a subsequent processing code; and a processor displaying a GUI screen on the display device in accordance with the programs and writing program termination information in the storage device. The processor (a) terminates the main program after displaying a first GUI screen in accordance with the main program and executing the subsequent processing code, (b) displays a second GUI screen in accordance with a first subsequent program that is specified by the subsequent processing code on the basis of the program termination information and that is executed after the main program, and (c) sequentially displays third and subsequent GUI screens, in accordance with N?1 subsequent programs subsequent to the second subsequent program that is executed after the first subsequent program, until a termination condition is satisfied.
    Type: Grant
    Filed: August 5, 2011
    Date of Patent: October 21, 2014
    Assignee: KYOCERA Documents Solutions Inc.
    Inventor: Kotaro Kaneko
  • Patent number: 8863094
    Abstract: Provided are techniques for receiving an error inject script that describes one or more error inject scenarios that define under which conditions at least one error inject is to be executed and compiling the error inject script to output an error inject data structure. While executing code that includes the error inject, an indication that an event has been triggered is received, conditions defined in the one or more error inject scenarios are evaluated using the error inject data structure, and, for each of the conditions that evaluates to true, one or more actions defined in the error inject script for the condition are performed.
    Type: Grant
    Filed: May 18, 2010
    Date of Patent: October 14, 2014
    Assignee: International Business Machines Corporation
    Inventor: Cheng-Chung Song
  • Patent number: 8843906
    Abstract: Disclosed herein are methods and compilers for compiling code. The methods and compilers disclosed can compile a callable compilable unit of code free of declarations and assertions that identify attributes of arguments expressed therein. The attributes of the arguments in the callable compilable unit of code are inferred by the compilers and methods disclosed herein from information provided by a call site that calls a compiler to compile the callable compilable unit of code.
    Type: Grant
    Filed: October 16, 2006
    Date of Patent: September 23, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Martin Clark, Frederick Mattsson Smith, John Elliott, Ricardo Losada
  • Patent number: 8819627
    Abstract: Techniques for expressing temporal relationships between lifecycle representations are provided. For example, one computer-implemented technique includes obtaining two or more lifecycle representations of at least two components of at least one computing system, annotating the two or more lifecycle representations with at least one temporal relationship, and storing the two or more annotated lifecycle representations as at least one deployment descriptor, wherein the at least one deployment descriptor is useable for managing the at least one computing system. In another computer-implemented technique, at least two internal lifecycle models of at least two components of at least one computing system are analyzed, at least one temporal relationship that exists between the at least two components are analyzed, and the at least one temporal relationship is transformed into at least one sequence of change management operations for use in managing the at least one computing system.
    Type: Grant
    Filed: June 10, 2013
    Date of Patent: August 26, 2014
    Assignee: International Business Machines Corporation
    Inventor: Alexander Keller
  • Patent number: 8813056
    Abstract: A program is executed with a first programmable device (10). Device operating points such as power supply voltage and/or clock frequency are adapted dependent on the states reached by the device during execution. Operation of programs that may have been sold after the device has been supplied to users is optimized by executing the computer program on each of a plurality of programmable devices (10) like the first programmable device, and collecting statistical data associated with the execution states encountered during execution by the plurality of programmable devices (10). Each of the plurality of programmable devices (10) collects its own statistical data and uploads the collected information to a common profiling apparatus (14). The profiling apparatus assigns device operating points to respective ones of the execution states, using an optimization that depends on the combined statistical data from the plurality of programmable devices (10).
    Type: Grant
    Filed: August 13, 2008
    Date of Patent: August 19, 2014
    Assignee: NXP B.V.
    Inventors: Artur Tadeusz Buchard, Petr Kourzanov, Ger Kersten
  • Patent number: 8799863
    Abstract: Techniques for debugging a computer program that includes multiple modules executing on multiple machines include receiving, at a unifying component, first data from a first machine. The first data indicates debugging information generated by the first machine. Second data is also received at the unifying component from a second machine. The second data indicates debugging information generated by the second machine. Based on the first data and the second data, third data is formed indicating a single integrated representation of debugging information for the computer program. The unifying component allows debugging information from several machines to be integrated and then presented to a user through a single debugger client.
    Type: Grant
    Filed: March 31, 2012
    Date of Patent: August 5, 2014
    Assignee: Oracle International Corporation
    Inventor: David M. Alpern
  • Patent number: 8799871
    Abstract: An exemplary embodiment provides methods, systems and mediums for executing arithmetic expressions that represent elementwise operations. An exemplary embodiment provides a computing environment in which elementwise expressions may be executed in parallel by multiple execution units. In an exemplary embodiment, multiple execution units may reside on a network.
    Type: Grant
    Filed: January 8, 2007
    Date of Patent: August 5, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Brett Baker
  • Patent number: 8799857
    Abstract: The present invention relates to an XML application framework (XAF). XAF applications are data driven such that all operations with the computer system are data focused. In addition, the components used in the XAF application are instantiated and connected according to how the data is displayed and what type of data is used. Applications within XAF comprise a user interface (UI) connector, an action module, and a data connector. UI connectors receive UI events and connect the UI event to an action module. The action module generates a standard format action from the UI event and sends it to the data connector. The data connector translates the standard format action into a data-specific action that changes data in a data store. A data connector then sends a standard format data representation corresponding to the changed data back to the UI connector to provide the changed data to the UI.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: August 5, 2014
    Assignee: Microsoft Corporation
    Inventors: Clemens A. Szyperski, Antony S. Williams, Craig Wittenberg
  • Patent number: 8789023
    Abstract: A method finds an error in a computer program. A plurality of execution breakpoints are set in the computer program. A portion of the execution of the computer program is simulated as recorded in the trace data in the reverse order until one a plurality of conditions is met, wherein one of the plurality of conditions is an attempt to execute a machine instruction associated with one of the plurality of execution breakpoints.
    Type: Grant
    Filed: March 7, 2012
    Date of Patent: July 22, 2014
    Assignee: Green Hills Software, Inc.
    Inventors: Michael Lindahl, Andre Yew, Mallory Morgan Green, II, Michael Johnson, Allan Craig Franklin, Daniel O'Dowd, Neil Puthuff