Abstract: A system and method for performing modeling, prediction, optimization, and control, including an enterprise wide framework for constructing modeling, optimization, and control solutions. The framework includes a plurality of base classes that may be used to create primitive software objects. These objects may then be combined to create optimization and/or control solutions. The distributed event-driven component architecture allows much greater flexibility and power in creating, deploying, and modifying modeling, optimization and control solutions. The system also includes various techniques for performing improved modeling, optimization, and control, as well as improved scheduling and control. For example, the system may include a combination of batch and continuous processing frameworks, and a unified hybrid modeling framework which allows encapsulation and composition of different model types, such as first principles models and empirical models.
Type:
Grant
Filed:
April 5, 2001
Date of Patent:
August 23, 2005
Assignee:
Pavilion Technologies, Inc.
Inventors:
Edward Stanley Plumer, Bijan Sayyar-Rodsari, Carl Anthony Schweiger, Ralph Bruce Ferguson, II, William Douglas Johnson, Celso Axelrud
Abstract: Systems and methods are described for an encrypted compiler. A method includes generating a first sub-file of source code; then encrypting said first sub-file of source code; then writing said first sub-file of source code to a buffer; then reading a second sub-file of source code from said buffer; then decrypting said second sub-file of source code; and then compiling said second sub-file of source code.
Abstract: Within both a method for upgrading a computer system and a system for upgrading the computer system there is provided a computer system having associated therewith an upgrade management utility. The upgrade management utility provides for a buffering of a series of incoming requests to the computer system when upgrading the computer system while operating the computer system, to thus provide an uninterrupted idle state when upgrading the computer system when operating the computer system. Thus, the computer system may be upgraded with minimal disruption of functions which it supports.
Abstract: Methods and systems consistent with the present invention provide an improved software development tool that simplifies a graphical representation of software code for a developer. The software development tool provides the developer with a more coherent, manageable, and abstract graphical view of the project model, and facilitates the developer in graphically debugging and editing the associated software code. The improved software development tool detects a group of related elements in the code, and collapses a portion of the graphical representation of the code associated with the group of related elements.
Type:
Grant
Filed:
October 4, 2000
Date of Patent:
August 16, 2005
Assignee:
Borland Software Corporation
Inventors:
Peter Coad, Dietrich Charisius, Alexander Aptus
Abstract: A method for testing internationalization in a program under development includes determining whether a command contains a test switch, which initiates the internationalization testing and displaying a character string being tested in a first format when the command contains the test switch.
Type:
Grant
Filed:
October 1, 2001
Date of Patent:
August 16, 2005
Assignee:
Hewlett-Packard Development Company, L.P.
Abstract: A method for integrating a version control tool into an integrated development environment includes receiving a version control command, creating an object using the integrated development environment, accessing the object using a version control adapter, and communicating the information from the version control adapter to the version control tool. The object includes at least command information corresponding to the version control command. A software system for carrying out this method is also provided.
Abstract: Embodiments of the present invention are directed to a method and apparatus for extending a program element in a dynamically typed programming language. In one embodiment, a program element is extended without altering the source code defining the program element. An extend structure is used to extend a program element in a particular program. In one embodiment, the program element is a function. The function is extended by adding code to be executed by the function. In another embodiment, the program element is an enumeration. The enumeration is extend by adding additional constants to the enumeration. In another embodiment, the program element is a class. In one embodiment, a class is extended by adding code to the constructor of the class. In another embodiment, a class is extended by adding member variables to the class. In yet another embodiment, a class is extended by adding member functions to the class.
Abstract: The object of the present invention is to analyze association relationships between data items and processes being used in an existing system. By analyzing a program or the like, the type and numbers of access instructions to data items in each step of the program is examined (step 13). Then, data item association degree is calculated from the type of access instruction etc., and the values of the association degree are corrected using system requirements etc (step 15 and step 17). Processes having high association degrees are collected together by referencing the corrected valves of the association degree (step 21). Based on the groups of collected processes, process division and data item partitioning is performed (step 23). Interfaces between processes are then displayed based on divided processes and partitioned data items (step 25).
Abstract: A first type of debugger impact reduction includes removing, from within a loop, an initial conditional breakpoint (“ICB”); extracting a first Boolean expression (“BE_1”) therefrom; setting a special conditional breakpoint (“SCB”) including the BE_1; and reestablishing the ICB if the SCB is satisfied. Optionally, the first type may further include extracting, from code within the loop, a second Boolean expression (“BE_2”); disjunctively including its complement in the SCB; and setting a reset breakpoint at loop exit program positions to remove reset breakpoints and/or the ICB. A second type includes setting the SCB with the complement of BE_1; and removing the ICB when the SCB is satisfied. Optionally, the second type may further include conjunctively including the BE_2 in the SCB; and setting a reset breakpoint to remove reset breakpoints and/or reestablish the ICB. The above may be embodied in a method, a program debugger and an article of manufacture.
Type:
Grant
Filed:
July 3, 2001
Date of Patent:
July 26, 2005
Assignee:
International Business Machines Corporation
Abstract: Method and apparatus for dynamic instrumentation of an executable application program. The application program includes a plurality of functions, each function having an entry point and an endpoint. When the application is executed, a shared memory segment is created for an instrumentation program and the application program. Upon initial invocation of the original functions in the application program, corresponding substitute functions are created in the shared memory segment, the substitute versions including instrumentation code. Thereafter, the substitute functions are executed in lieu of the original functions in the application program.
Type:
Grant
Filed:
April 11, 2001
Date of Patent:
July 12, 2005
Assignee:
Hewlett-Packard Development Company, L.P.
Inventors:
Robert Hundt, Vinodha Ramasamy, Eric Gouriou, David J. Babcock, Thomas C. Lofgren, Jose German Rivera, Umesh Krishnaswamy
Abstract: A software editing apparatus is provided with an input unit for inputting an information file which includes editing parts and editing contents with respect to a software which is provided in a form which is not directly editable, and an editing unit for editing the software based on the information file during operation of the software.
Abstract: A system and method for automatically converting a compiled program that accesses objects stored in main memory into a program that accesses and updates persistently stored objects. An initial computer program includes original instructions for accessing and updating objects in at least a first object class. The original instructions access and update objects in a computer's main memory. The system automatically revises the initial computer program to generate a revised computer program by adding to the original instructions object loading instructions and object storing instructions. The system further revises the initial computer program to generate the revised computer program by adding to the original instructions dirty object marking instructions that, during execution of the revised computer program, keep track of which objects in the computer's main memory contain new and/or updated data.
Abstract: The present invention provides a mechanism that facilitates speculative execution of instructions within software-pipelined loops. In accordance with one embodiment of the invention, a software-pipelined loop is initialized with a speculative instruction deactivated. At least one initiation interval of the software-pipelined loop is executed, and the speculative instruction is activated. Subsequent initiation intervals of the software-pipelined loop are then executed.
Abstract: An interpreter uses a symbol table containing information for resolving symbolic references in instructions. Memory is provided for storing symbolic reference-result associations, the result of the association having resulted from resolving the symbolic reference of the association for an instruction. The memory is organized in groups of locations, each for results for a different category of instructions. During execution of a particular instruction, that group is consulted which is assigned to the category to which the particular instruction belongs. If that group contains an association for the symbolic reference in the particular instruction. If there is such an association, the result from the association is used as operand data for executing the particular instruction. If there is no such association, the particular symbolic reference is resolved by means of the symbol table.
Abstract: A method for updating firmware includes dividing a memory of a computer device into five portions, wherein an initial program, an old program, an old backup firmware, the checksum of the old firmware, and the checksum of the old backup firmware are saved, respectively, in the first portion, the second portion, the third portion, the fourth portion and the fifth portion; executing the initial program in the first portion; writing a new firmware into the second portion from an external device for replacing the old firmware; writing the checksum of the new firmware into the fourth portion; writing the new firmware into the third portion for replacing the old backup firmware; writing the checksum of the new firmware into the fifth portion; and executing the new firmware in the second portion for operating the computer device.
Abstract: A method for upgrading software at remote locations comprises uploading software upgrades to a portable computing device and conveying the portable computing device to the remote locations. The portable computing device ascertains the current software and hardware present at the remote location and installs the requested software upgrade if no incompatibilities are detected. Further, the portable computing device stores a record of what service was performed and what software is presently in existence at the remote location. The portable computing device communicates with a corporate computer the records so created and an accounting is performed.
Abstract: The invention comprises a system and method for monitoring the performance of an application. The invention includes a monitoring system graphical user interface (GUI) having an interactive window with on-screen graphics representative of the application architecture and component performance. The GUI comprises straightforward and intuitive icons, panels, and dataflows, representing the existence, capacity, or number of processes, memory structures, and the like of the application being monitored. In addition, the monitoring system includes an alert firing mechanism and process for alerting an administrator to potential or actual performance problems in the application.
Abstract: A method and system for representing and implementing a concept between two functional domains (e.g., programming languages) by using a proxy component in a first domain to wrap a component of a second domain, where the proxy component has a semantic usability in the first domain closely corresponding to the semantic usability of the underlying component from the second domain. Further, provided is a method and system for automatically generating such a proxy component. Such proxy components may be used to gradually transform a digital entity (e.g., a software application) from a first digital domain to a second digital domain. Further, such proxy components may be generated using models that transform a component of a first domain to a component (e.g., a proxy component) of a second domain.
Abstract: Linear transformations are carried out on a matrix that represents information such as an image or a communication. In an aspect, the matrix is processed to remove duplicate information. The duplicate information can be duplicate rows, or zero rows. This matrix is then transformed into a modifed matrix, indicating duplicate information is removed to produce a modified matrix.
Type:
Grant
Filed:
October 6, 2000
Date of Patent:
May 17, 2005
Assignee:
Intel Corporation
Inventors:
Avner Dor, Doron Rainish, Daniel Yellin
Abstract: Disclosed are a system and a method for upgrading device drivers. The system for upgrading a device driver of a user's computer through a network, including an upgrade server dividing at least one device driver for upgrading into a variable file and an invariable file information according to a version thereof, and supplying the variable file and the invariable file information through the network; and an upgrading program installed in the user's computer, downloading the variable file and the invariable file information from the upgrade server and upgrading the device driver to the variable file based on the invariable file information. With this configuration, an end user can easily upgrade the device driver.