Abstract: Methods, apparati, and computer-readable media for updating proxy executable code. An apparatus embodiment of the present invention comprises generic universal proxy executable code that can be instantiated multiple times, with each instance being driven by a different set of files comprising a protocol specification file and a proxy activity code file, to control protocol decomposition and proxy functions, respectively. In a method embodiment of the present invention, a protocol specification is created or updated; proxy activity code, separate from the protocol specification, is created or updated; and the proxy executable code is executed using the protocol specification and the proxy activity code.
Type:
Grant
Filed:
November 25, 2003
Date of Patent:
April 29, 2014
Assignee:
Symantec Corporation
Inventors:
Jeffrey Sulton, Bruce McCorkendale, Carey Nachenberg
Abstract: A domain model generator (DMG) for an integrated development environment (IDE) guides a software engineer through a process of identifying domain-specific concepts for a domain of an object-oriented software application. The DMG also helps the engineer to classify the domain-specific concepts as pertaining to particular object-oriented modeling concepts for the object-oriented software application. Those modeling concepts may include classes, attributes, inheritance, etc. In addition, the DMG may automatically generate a Unified Modeling Language (UML) domain diagram, based at least in part on the domain-specific concepts and the corresponding modeling concepts. Other embodiments are described and claimed.
Type:
Grant
Filed:
December 22, 2010
Date of Patent:
April 22, 2014
Assignee:
Board of Regents, The University of Texas System
Abstract: A unified debug system with multiple user-configurable trace volumes is disclosed, including embodiments as a system, a method, and a computer-readable medium. Embodiments of the present invention provide more robust and flexible solutions for introducing configurable trace volumes to firmware, allowing a user to specify firmware system configurations for trace buffers, trace frames, and trace volumes, and offer other advantages over the prior art. One embodiment of the present invention pertains to a system that includes a firmware component comprising firmware, and a firmware interface communicatively connected to the firmware component. The firmware includes a plurality of trace volumes for storing a plurality of trace entries. The trace volumes are user-configurable through the firmware interface. The plurality of trace volumes includes first, second and third trace volumes. The first trace volume includes storing at least some of the trace entries to a trace buffer in a first volatile memory component.
Type:
Grant
Filed:
June 2, 2005
Date of Patent:
April 8, 2014
Assignee:
Seagate Technology LLC
Inventors:
Brian T. Edgar, Mark A. Gaertner, Bhooshan S. Thakar
Abstract: Systems, methods and apparatuses for replacing communication devices in a system. Configuration data of a replacement device (which may include a sub-part of the device) that is requesting inclusion in the system is received by a receiving device, which determines whether the received configuration data matches existing configuration data stored for an existing device currently included in the system. Upon identifying a match of the relevant configuration data, the device data associated with the existing device is identified, and replaced with device data of the replacement device, thereby effecting a one-step replacement of the existing device by providing the configuration data of the replacement device.
Type:
Grant
Filed:
October 17, 2008
Date of Patent:
March 18, 2014
Assignee:
Honeywell International Inc.
Inventors:
Kenneth Kidder, Steven Nichols, Cary Leen
Abstract: Component relinking in migrations may include discovering one or more dependencies in one or more components; planning one or more new locations where the one or more components are to be placed; determining relinking needs in the one or more components based on the discovering and the planning; and applying the relinking needs.
Type:
Grant
Filed:
April 13, 2010
Date of Patent:
March 18, 2014
Assignee:
International Business Machines Corporation
Inventors:
Nikolai A. Joukov, Matthew A. Markley, Birgit Pfitzmann, HariGovind V. Ramasamy
Abstract: A virtual machine supports execution of compiler-generated code and provides an execution environment for code that may correspond to any of several different event-driven or message-driven programming models (such as state machines, rules for complex event processing and event correlation, monitoring contexts, processes, and mediations). The programming models may be used in business monitoring and/or business integration environments. A programming language is defined for execution using the virtual machine, which contains a relatively small number of instructions and which is preferably generated by a compiler from a higher-level, event-driven or message-driven model.
Type:
Grant
Filed:
February 23, 2012
Date of Patent:
March 18, 2014
Assignee:
International Business Machines Corporation
Abstract: A machine-independent representation of computer instructions can serve as a standard for machine instruction description that is suitable for post-link transformation tools, such as post-link optimizers, and for education of users. In one embodiment the instructions are presented as expression trees in a XML file. An optimizer operates on the transformed code representations, after which optimized code is re-transformed into machine-readable code.
Type:
Grant
Filed:
December 7, 2006
Date of Patent:
February 18, 2014
Assignee:
International Business Machines Corporation
Abstract: A method and data structure for improving the utility of graphics compositions is disclosed. In one embodiment, composition files are created through the connection of patches in a composition editor. Automatically included with the created composition file is protocol information. Preferably such protocol information is included as metadata in the header of the composition file, and can be constructed in any suitable fashion. So constructed, composition files can be grouped together in a physical or virtual repository accessible to other application programs. Another user can then pick an appropriate composition for a new project based on review and filtering of the protocols as contained in the header information of the repositoried composition files. Such review and filtering can be accomplished using a composition picker user interface in the user's application program. The repository can then be queried for composition files matching or otherwise compatible with the specified protocol.
Abstract: In one embodiment, the present invention is a method and apparatus for dynamic middleware assembly. One embodiment of the inventive method for dynamically assembling middleware at a client involves selecting a middleware component from a group of middleware components, where the selection is based at least in part on a first profile defining characteristics of the client and a second profile defining characteristics the selected middleware component. The selected middleware component is then dynamically assembled (installed and configured) at the client.
Type:
Grant
Filed:
August 9, 2010
Date of Patent:
February 4, 2014
Assignee:
International Business Machines Corporation
Inventors:
Judah K. Diament, Thomas A. Mikalsen, Isabelle M. Rouvellou, Stefan Tai
Abstract: A server for automatically installing a required application responsive to a client device is described. The server comprises an interface agent arranged to receive a first signal from a client wireless device where the first signal comprises an identifier. A retrieval application is arranged to obtain an executable application corresponding to the identifier and an installer application is arranged to install the executable application responsive to the retrieval application obtaining the executable application. The interface agent is arranged to cause execution of the installed executable application.
Abstract: A debugger debugs processes that execute shared instructions so a breakpoint set for one process will not cause a breakpoint to occur in the other processes. A breakpoint is set by recording the original instruction at the desired location and writing a trap instruction to the shared instructions at that location. When a process encounters the breakpoint, the process passes control to the debugger for breakpoint processing if the breakpoint was set at that location for that process. If the trap was not set at that location for that process, the cacheline containing the trap is copied to a small scratchpad memory, and the virtual memory mappings are changed to translate the virtual address of the cacheline to the scratchpad. The original instruction is then written to replace the trap instruction in the scratchpad, so the process can execute the instructions in the scratchpad thereby avoiding the trap instruction.
Type:
Grant
Filed:
October 21, 2008
Date of Patent:
January 21, 2014
Assignee:
International Business Machines Corporation
Inventors:
Thomas Michael Gooding, Richard Michael Shok
Abstract: A virtual machine supports execution of compiler-generated code and provides an execution environment for code that may correspond to any of several different event-driven or message-driven programming models (such as state machines, rules for complex event processing and event correlation, monitoring contexts, processes, and mediations). The programming models may be used in business monitoring and/or business integration environments. A programming language is defined for execution using the virtual machine, which contains a relatively small number of instructions and which is preferably generated by a compiler from a higher-level, event-driven or message-driven model.
Type:
Grant
Filed:
February 29, 2008
Date of Patent:
January 7, 2014
Assignee:
International Business Machines Corporation
Abstract: A method for processing a probe including triggering the probe in an instrumented program, querying a global array to determine an execution control block associated with the probe, and executing the execution control block to obtain data.
Abstract: Disclosed herein are systems, methods, and non-transitory computer-readable storage media for analyzing source code and identifying potential defects. The methods employ both static analysis and dynamic testing to detect program defects early in the development stage for better quality with less cost. The analysis also ranks identified potential defects and reports only the most likely defects to a human developer. Once defects are detected, they can be removed right away and similar defects can be prevented automatically.
Type:
Grant
Filed:
December 27, 2010
Date of Patent:
December 31, 2013
Assignee:
Avaya Inc.
Inventors:
James M Landwehr, Juan Jenny Li, John Palframan
Abstract: This invention relates to a method and apparatus for developing software. In one embodiment, a method for facilitating the distributed development of software components includes providing a skill rating for software developers, communicating specifications for a software component to a subset of the developers, receiving submissions from the developers, scoring the submissions, and selecting one submission to be included in a software repository. In another embodiment, a method for compensating a software developer includes soliciting software developers for the submission of computer software components, receiving software components in response to the solicitation from the developers, evaluating the received software components, selecting one or more of the submissions for potential distribution to the public, and allotting the proceeds from the distribution to the developers.
Abstract: A computer implemented method for scheduling multithreaded programming instructions based on the dependency graph wherein the dependency graph organizes the programming instruction logically based on blocks, nodes, and super blocks and wherein the programming instructions could be executed outside of a critical section may be executed outside of the critical section by inserting dependency relationship in the dependency graph.
Abstract: Embodiments of systems, methods and computer program products are described for implementing repository relationship programming. Implementations described herein describe processes for implementing a union of concerns, integrating concerns, assembling concerns and separating concerns.
Abstract: In a method of building a firmware component to execute a sequence of instructions in a device having a computer, a plurality of build files is processed to form a set of buildable statements of hardware policy. The buildable statements are decoded to form a Configuration Manager namespace. Contents of the Configuration Manager namespace are linked to a UEFI compatible kernel program having a Configuration Manager capability. Alternatively, a data stream representing the contents of the Configuration Manager namespace is encoded to form a Configuration Manager database readable by the UEFI compatible kernel program at a run-time. A plurality of UEFI device driver programs and the UEFI compatible kernel program are linked to form the firmware component.
Abstract: Methods and apparatus are provided for implementing a programmable chip using a high-level language. Code sequences such as high-level language software critical loops are converted into read/transform/write (RXW) processes with buffer based flow control between the processes. Having separate read and write processes allows an arbitrary number of sequential reads/writes to occur in any order, subject to buffer size, allowing bursting/sequential transactions that are more efficient than random accesses.
Type:
Grant
Filed:
December 13, 2010
Date of Patent:
November 5, 2013
Assignee:
Altera Corporation
Inventors:
Jeffrey Orion Pritchard, Jarrod Colin James Blackburn, David James Lau, Philippe Molson, James L. Ball, Jesse Kempa
Abstract: The launch of an installer or uninstaller is detected. A process lineage tree is created representing the detected launched installer/uninstaller process, and all processes launched directly and indirectly thereby. The detected installer/uninstaller process is represented by the root node in the process lineage tree. Launches of child processes by the installer/uninstaller process and by any subsequently launched child processes are detected. The launched child processes are represented by child nodes in the tree. As long as the installer/uninstaller process represented by the root node in the tree is running, the processes represented by nodes in tree are exempted from anti-malware analysis. The termination of the installer/uninstaller process is detected, after which the processes represented by nodes in the process lineage tree are no longer exempted from anti-malware analysis.
Type:
Grant
Filed:
April 15, 2010
Date of Patent:
November 5, 2013
Assignee:
Symantec Corporation
Inventors:
Mark Kennedy, Sourabh Satish, Alexander Danileiko, Ming-Jen Wang