Patents Examined by Eric B. Kiss
  • Patent number: 7461374
    Abstract: A method for dynamic installation and activation of software packages in a distributed networking device. A master node provides a software package database that contains software packages for all nodes. It notifies a node that a software update is being requested, which examines the package identifiers and the dependencies and determines the running processes that will be affected by the update. The processes evaluate the effect that the update will have on their operation. If any of the processes determine that the update will degrade or have a negative impact on the operation of the node, the process will veto the update. If the master node receives no vetoes, it updates the node which installs and activates without interrupting the normal operation of the node.
    Type: Grant
    Filed: December 1, 2003
    Date of Patent: December 2, 2008
    Assignee: Cisco Technology, Inc.
    Inventors: Matthew Balint, Glen Darling, John Fitzgerald, Douglas Wooff
  • Patent number: 7441237
    Abstract: A system and method for interfacing additional translation logic via composer(s) to a compiler to extend the capabilities of the compiler is provided. Generally, composer(s) can be software libraries that provide employment of componentization and polymorphism to compiler add-ons in order to extend compiler capabilities. One or more composers can be accessible to the compilation process by reference(s) made in a source code file. For example, additional translation logic for data types and/or expressions (e.g., markup language) created after compiler design can be made accessible to a compiler via composer(s), thus extending the existing compiler. The present invention mitigates problems associated with conventional compiler extending schemes and affords for compile code optimization without having to consider substantially all of the operations of a single query.
    Type: Grant
    Filed: March 25, 2003
    Date of Patent: October 21, 2008
    Assignee: Microsoft Corporation
    Inventors: Matthew J. Warren, Barend H. Venter, Wolfram Schulte, Erik Meijer, Christopher J. Lovett, Chia-Hsun Chen
  • Patent number: 7441233
    Abstract: A system and method providing status information about a task being processed on a computer system is described. The task comprises an operation that blocks user activity, such as a modal task. Status information about the task is obtained during processing of the task on an event thread of a computer system. A status display is generated based upon this status information. The task yields time on the event thread, enabling the status information to be displayed in the user interface of the computer system.
    Type: Grant
    Filed: April 11, 2003
    Date of Patent: October 21, 2008
    Assignee: Borland Software Corporation
    Inventors: Joyce Orndorff, Blake Stone
  • Patent number: 7434202
    Abstract: A system and method for use with an enterprise system or software development system, for determining or checking for dependencies between software components, or between other components of said system. The system utilizes a module architecture specification language and toolkit to check system code for compliance against a set of rules or requisites. The module architecture specification can be structured into product-wide groundrules applicable to all subsystems, subsystem-, layer-, module-specific, and thin-client/server rules. In accordance with one embodiment, the system can be used to allow, forbid, or constrain certain dependencies between software modules, or between the building blocks, organization components, or products that make up a large enterprise system.
    Type: Grant
    Filed: February 24, 2004
    Date of Patent: October 7, 2008
    Assignee: BEA Systems, Inc.
    Inventor: Reto Kramer
  • Patent number: 7426725
    Abstract: Techniques for cross-module in-lining are disclosed. In an embodiment, in-lining is done in conjunction with a 3-phase compiler including a front-end phase, an IPA (Inter-Procedural Analysis) phase, and a back-end phase. The front-end phase processes the source code in various modules and provides the intermediate representations of such source code. The IPA phase determines whether a function should be in-lined, and, if so, provides in-line transformation instructions for the back-end phase to execute. The back-end phase executes the instructions provided by the IPA, which, in effect, transforms the in-lining code.
    Type: Grant
    Filed: February 20, 2004
    Date of Patent: September 16, 2008
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Sungdo Moon, XinLiang David Li, Dhruva R. Chakrabarti
  • Patent number: 7421684
    Abstract: A method, apparatus, and computer instructions for presenting coverage data relating to data access occurring during execution of code. The coverage data containing data access indicators associated with memory locations is obtained. The data access indicators that have been set by a processor in the data processing system in response to access of the memory locations during execution of the code by the processor are identified to form set data access indicators. Each set instruction access indicator is associated with a portion of the memory locations allocated for the code. A presentation for coverage data is generated, wherein the set data access indicators are identified in the presentation.
    Type: Grant
    Filed: March 22, 2004
    Date of Patent: September 2, 2008
    Assignee: International Business Machines Corporation
    Inventors: Robert Tod Dimpsey, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 7421688
    Abstract: Methods and systems are provided for updating firmware on a plurality of networked computing devices via a distributed network. An instruction to update the firmware on a plurality of networked computing devices, such as nodes in a computer cluster, is sent from a manager computer to the computing devices monitoring for instructions. When the instruction is received, the computing devices transition to an operating system independent recovery state, receive a new firmware image over the distributed network, and update the firmware with the new firmware image.
    Type: Grant
    Filed: February 3, 2004
    Date of Patent: September 2, 2008
    Assignee: American Megatrends, Inc.
    Inventors: Stefano Righi, Brian Richardson, Jerry Petree
  • Patent number: 7412695
    Abstract: Sequential digital integrated circuits have stable state nodes that are capable of retaining their state (logic value) even in the absence of any input directly driving these points. However, in addition to stable state nodes, some custom-designed digital circuits have so-called transient state nodes. A transient state node is defined as node that can directly affect the value of a stable state node and is combinatorially driven by inputs of the circuit, but the transition delay from at least one input to the node is greater than a predefined threshold value. Identifying such transient state nodes, along with the stable state nodes, is critical for the efficient simulation of custom digital circuits by a hierarchical device level digital simulator. A method is provided herein for identifying transient state nodes in a digital circuit, given the circuit's netlist and the identity of the stable state nodes in the circuit.
    Type: Grant
    Filed: August 17, 2005
    Date of Patent: August 12, 2008
    Assignee: National Semiconductor Corporation
    Inventors: Tathagato Rai Dastidar, Amir Yashfe, Partha Ray
  • Patent number: 7409671
    Abstract: A methodology of reducing process algebra to a language that facilitates modeling a business workflow process is provided. A process algebra is reduced to a model for business workflow processes. The model is then reduced to a scheduling programming language to allow users to create models of business process by selecting between features of the model and conventional modeling features. The scheduling programming language can be represented as a graphical user interface program that is convertible to a schedule language written in a programmable language. The present invention provides for explicitly representing parallelism within the business workflow process by separating interdependent transactions from independent transactions. The isolation of certain transactions are relaxed, such that users can define transactional boundaries in order to increase granularity of the transaction at an action level and provide visibility of transactions at intermediate steps.
    Type: Grant
    Filed: April 28, 2000
    Date of Patent: August 5, 2008
    Assignee: Microsoft Corporation
    Inventors: Lucius Gregory Meredith, Amit Mital, Marc Levy, Brian Beckman, Anthony Andrews
  • Patent number: 7398517
    Abstract: A method and system of detecting vulnerabilities in source code. Source code is parsed into an intermediate representation. Models (e.g., in the form of lattices) are derived for the variables in the code and for the variables and/or expressions used in conjunction with routine calls. The models are then analyzed in conjunction with pre-specified rules about the routines to determine if the routine call posses one or more of pre-selected vulnerabilities.
    Type: Grant
    Filed: June 13, 2007
    Date of Patent: July 8, 2008
    Assignee: Ounce Labs, Inc.
    Inventors: Ryan J. Berg, Larry Rose, John Peyton, John J. Danahy, Robert Gottlieb, Chris Rehbein
  • Patent number: 7398516
    Abstract: A method and system of detecting vulnerabilities in source code. Source code is parsed into an intermediate representation. Models are derived for the code and the models are then analyzed in conjunction with pre-specified rules about the routines to determine if the routines posses one or more of pre-selected vulnerabilities.
    Type: Grant
    Filed: April 15, 2004
    Date of Patent: July 8, 2008
    Assignee: Ounce Labs, Inc.
    Inventors: Ryan James Berg, Larry Rose, John Peyton, John J. Danahy, Robert Gottlieb, Chris Rehbein
  • Patent number: 7392513
    Abstract: Methods and apparatus for merging critical sections are disclosed. An example disclosed system estimates the cost of merging a first critical section and a second critical section using a dataflow analysis on the first and second critical sections. In the example system, the first critical section and the second critical section are merged based on a least expensive cost of merging critical sections.
    Type: Grant
    Filed: March 19, 2004
    Date of Patent: June 24, 2008
    Assignee: Intel Corporation
    Inventors: Li Long, Bo Huang, Jinquan Dai
  • Patent number: 7386835
    Abstract: A technique for easily making modifications to a graphical user interface (GUI). XML files each containing different rules for making a tree display are easily written by code developers. The files are merged into a document object model (DOM) stored in memory. The GUI display presentation can thus be easily updated by the code developers by modifying the rules stored in the DOM by merging additional XML files containing rule additions, deletions and/or modifications into the DOM. The DOM is parsed for certain object classes for which object instances are needed. The object instances having certain display properties are retrieved from the system or network with which the GUI is operative and are combined with certain display attributes or display rules stored in the DOM. The object instances including their display properties and attributes are returned to the GUI to be displayed on the terminal screen in accordance therewith.
    Type: Grant
    Filed: March 22, 2002
    Date of Patent: June 10, 2008
    Assignee: EMC Corporation
    Inventors: Munish T. Desai, Brian R. Gruttadauria, Andreas L. Bauer
  • Patent number: 7383538
    Abstract: A method to trace a variable or other expression through a computer program is disclosed. A user determines the variable and the conditions upon which activity of the variable will be monitored. As a result of the invention, every time that variable is referenced in a memory operation or other activity by the program and the conditions set forth by the user are satisfied, the state of that variable is saved as a snapshot without interrupting or stopping execution of the program. The snapshots are accumulated in a history table. The history table can be retrieved and the state of the variable in any given snapshot can be restored. Other variables and expressions can be attached to the trigger variable and the states of these other variables at the time of the activity of the trigger variable may also be saved in the snapshot. The method may be incorporated into a program as a tracing device or a program product separate from the logical processing device executing the program.
    Type: Grant
    Filed: December 6, 2001
    Date of Patent: June 3, 2008
    Assignee: International Business Machines Corporation
    Inventors: Cary Lee Bates, Vadim Berestetsky, Paul Reuben Day, John Matthew Santosuosso
  • Patent number: 7380243
    Abstract: An image forming apparatus is disclosed that includes one or more processing units, a control unit, an update program acquiring unit that acquires an update program for updating programs of the processing units and the control unit, and a program updating unit that updates the programs of the processing units in the order of the number of the other processing units through which the control unit communicates with each of the processing units. The order in which the processing units are updated is determined based on the number of other processing units via which each of the processing units communicates with the control unit.
    Type: Grant
    Filed: November 17, 2003
    Date of Patent: May 27, 2008
    Assignee: Ricoh Company, Ltd.
    Inventors: Satoru Sugishita, Yoshihiko Abe, Ryohichi Katoh, Katsuhiko Sasaki
  • Patent number: 7376944
    Abstract: An on-line service is automatically accessed by the computer as it boots up to determine if a ROM update exists for the system. If so, the updated ROM code is downloaded to the system and the ROM is flashed. The operator of the system is generally uninvolved in this process and the process is preferably performed each time the system initializes. In this manner, the system's ROM is nearly always up to date proactively and the operator or IT administrator need not spend time and energy reacting to a problem, determining whether a ROM update exists, finding the updated ROM, downloading the new ROM code and flashing the ROM him or herself.
    Type: Grant
    Filed: December 18, 2001
    Date of Patent: May 20, 2008
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Adrian Crisan, David Burckhartt
  • Patent number: 7376942
    Abstract: A method and software for managing class variables is described in which a variable-format container for static class variables is provided such that numeric class variables can be accessed directly while other kinds of class variables are accessed via a reference to an object.
    Type: Grant
    Filed: May 8, 2003
    Date of Patent: May 20, 2008
    Assignee: Oracle International Corporation
    Inventors: Harlan Sexton, David Unietis, Peter Benson
  • Patent number: 7373640
    Abstract: The present invention provides a technique for converting a multi-threaded application configured to execute on a uniprocessor (UP) system to one that executes on a multiprocessor (MP) system. Unlike previous approaches, a novel scheduling technique is employed so that different UP-coded user-level threads (“sthreads”) can execute concurrently in the MP system without having to rewrite their original code. To that end, the UP-coded sthreads are organized into different concurrency groups, each of which defines a set of one or more sthreads not permitted to execute concurrently. By grouping the UP-coded sthreads in this manner, different concurrency groups can be scheduled to execute their UP-coded sthreads at substantially the same time without incorporating traditional synchronization mechanisms into the sthreads' original UP code.
    Type: Grant
    Filed: July 31, 2003
    Date of Patent: May 13, 2008
    Assignee: Network Appliance, Inc.
    Inventors: Robert M. English, Zdenko Kukavica, Konstantinos Roussos
  • Patent number: 7370318
    Abstract: A system and methodology for asynchronous code refactoring with symbol injection is described. In one embodiment, for example, a method is described for refactoring a plurality of interdependent software modules that reside in separate projects, the method comprises steps of: in response to a change that affects a particular symbol of a software module that resides in a first project, refactoring the software module of the first project to propagate the change to all instances of the particular symbol in the software module; during the refactoring of the software module of the first project, recording meta data about the refactoring that is required to effect the change; and automatically propagating the change to a dependent software module residing in a second project, by refactoring the dependent software module based on the recorded meta data about the refactoring that occurred to the software module of the first project.
    Type: Grant
    Filed: September 2, 2004
    Date of Patent: May 6, 2008
    Assignee: Borland Software Corporation
    Inventors: Mark K. Howe, Lubomir B. Litchev, Christian K. Kemper
  • Patent number: 7367016
    Abstract: A method for expressing the algorithms for the manipulation of hardware includes providing program instructions that describe a sequence of one or more transactions for manipulating hardware components of a system. The program instructions may call one or more code segments that include specific information associated with particular hardware components of the system. In addition, the program instructions are independent of the specific information. The method may also include translating the program instructions into an executable form and executing the executable form of the program instructions to manipulate the hardware components of the system from one consistent state to a next consistent state.
    Type: Grant
    Filed: July 14, 2003
    Date of Patent: April 29, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Douglas B. Meyer, David L. Isaman, William C. Jackson