Patents Examined by Mary Steelman
  • Patent number: 6684385
    Abstract: The present invention relates to a program-development environment that allows developers to seamlessly switch between a visual programming paradigm and a textual programming paradigm, thereby permitting developers to choose the paradigm best suited for creating each aspect of the desired program. A graphical user interface (GUI) may be generated by the program-development environment, and displayed on the screen of a computer system. The GUI has several elements including a form window and a designer window. The form window is configured to receive one or more control objects selected by the developer, and the designer window is configured to display a symbolic representation of those control objects placed in the form window.
    Type: Grant
    Filed: January 14, 2000
    Date of Patent: January 27, 2004
    Assignee: SoftWIRE Technology, LLC
    Inventors: Bendrix L. Bailey, Christopher J. Phillips, Michael F. Morganelli, Gerard M. Reilly
  • Patent number: 6681391
    Abstract: A method and system for installing software on a computer generates an installation order that ensures that a component required for the functioning of another component is already installed. Furthermore, it makes possible generating good installation orders to allow related components, e.g., in a software suite, to be installed close together, thus reducing disk swapping. The method and system take into account the existing configuration on a computer and allow removal of components along with dynamic reconfiguration of a computing system in response to a user's choice of an application program to launch. In accordance with the invention, preferably a developer includes information about the component's relationship with other components, e.g., a specific requirement for a preinstalled component or a requirement that a particular component not be present, thus requiring its removal.
    Type: Grant
    Filed: June 21, 2000
    Date of Patent: January 20, 2004
    Assignee: Microsoft Corporation
    Inventors: Phillip J. Marino, David V. Winkler, Crista Johnson, William M. Nelson
  • Patent number: 6662361
    Abstract: Disclosed is a method, system, program, and data structures for transforming an instruction in a first bit architecture, e.g., 32 bit, to an instruction in a second bit architecture, e.g., 64 bit. Code is transformed from an instruction in the first bit architecture having an operation code and at least one operand. A transform table is accessed including information for transforming the instruction in the first bit architecture to the second bit architecture. The instruction in the first bit architecture is transformed to a corresponding instruction in the second bit architecture if the transform table includes information indicating to modify the instruction in the first bit architecture. The transformation is based on transformation operations that modify the instruction in the first bit architecture to generate the instruction in the second bit architecture.
    Type: Grant
    Filed: January 14, 2000
    Date of Patent: December 9, 2003
    Assignee: International Business Machines Corporation
    Inventor: Andrea Ontko Jackson
  • Patent number: 6662359
    Abstract: The present invention is directed to a system, method and instructions for handling path flow exception and finalization processing in an object oriented programming language. Initially, each instrumentation method is checked for a code to indicated an exception being thrown. A hook is inserted before the exception code and identifies the method throwing the exception. Methods must also be checked for exception tables. When an exception table is found, then a hook is inserted at the entry point of each exception handler for every entry in the exception table. This hook identifies the method which catches the exception.
    Type: Grant
    Filed: July 20, 2000
    Date of Patent: December 9, 2003
    Assignee: International Business Machines Corporation
    Inventors: Robert Francis Berry, John Day Howard, Riaz Y. Hussain, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 6658659
    Abstract: A system and method for loading software identifies versions of software modules to be loaded. The version identification allows a loader to request, access and load any level or version of a program that the application interacts with. Thus, the loader selects only specific versions of software that are known to be compatible with other software currently loaded or being loaded. The software includes specific compatibility information that is used to determine whether it should be selected or passed over for another version of the same software. In this manner, a “version aware” loader ensures that loaded software modules are compatible with one another and will therefore execute properly. The version aware loader may be implemented in an operating system or other loading software running on a personal computer or network router.
    Type: Grant
    Filed: December 16, 1999
    Date of Patent: December 2, 2003
    Assignee: Cisco Technology, Inc.
    Inventors: Dean Hiller, Thomas Gee, David F. Doner, Jr.
  • Patent number: 6658660
    Abstract: A computer (100) and a method (200) are provided for automatically generating source code (132) readily operable in a fault-tolerant system or a distributed system, from source code (130) non-operable in either a fault-tolerant system or a distributed system. The computer (100) preferably includes a programmer's computer system including a CPU (104), storage media (108-118), I/O interface 142, input device (144), output device (146). The computer (100) analyzes the source code (130), and automatically generates source code (132), which is then stored in the storage medium (132). The source code (132) contains additional lines of code for marshaling, unmarshaling, and marking modified data objects.
    Type: Grant
    Filed: December 31, 1999
    Date of Patent: December 2, 2003
    Assignee: Nortel Networks Limited
    Inventor: Trenton Corey Minyard
  • Patent number: 6658652
    Abstract: A method and system for detecting memory leaks in an object-oriented environment during real-time trace processing is provided. During the profiling of a program executing in a data processing system, a profiler processes events caused by the execution of the program, and the profiler maintains a profile data structure containing execution-related metrics for the program. The execution-related metrics may include object allocation and deallocation metrics that are associated with object processing initiated on behalf of an executing method. An object allocator allocates objects during the execution of the program and modifies object allocation metrics in the profile data structure. Object metrics are stored in a particular location and a pointer to that location is stored in a hash table associated with the object's ID. In another embodiment the pointer to the location is stored in a shadow heap in the same relative position as the position of the object in the heap.
    Type: Grant
    Filed: June 8, 2000
    Date of Patent: December 2, 2003
    Assignee: International Business Machines Corporation
    Inventors: William Preston Alexander, III, Frank Eliot Levine, William Robert Reynolds, Robert J. Urquhart
  • Patent number: 6651249
    Abstract: A software application (110) is updated to a newer version by means of incremental update patches (122). The incremental update patches (122) each contain that information necessary to transform one version of an application to another version. Any version of an application (110) may be upgraded to any other version of the application, through the use of a series of incremental update patches (122). The appropriate incremental update patches (122) are distributed in a multi-tiered manner, such that some update patches (122) update the application (110) by only one version, and others update the application (110) by several versions.
    Type: Grant
    Filed: December 22, 1999
    Date of Patent: November 18, 2003
    Assignee: Symantec Corporation
    Inventors: Ray Soon Waldin, Carey Nachenberg
  • Patent number: 6651245
    Abstract: The present invention discloses a method and device for placing prefetch instruction in a low-level or assembly code instruction stream. It involves the use of a new concept called a martyr memory operation. When inserting prefetch instructions in a code stream, some instructions will still miss the cache because in some circumstances a prefetch cannot be added at all, or cannot be added early enough to allow the needed reference to be in cache before being referenced by an executing instruction. A subset of these instructions are identified using a new method and designated as martyr memory operations. Once identified, other memory operations that would also have been cache misses can “hide” behind the martyr memory operation and complete their prefetches while the processor, of necessity, waits for the martyr memory operation instruction to complete. This will increase the number of cache hits.
    Type: Grant
    Filed: October 3, 2000
    Date of Patent: November 18, 2003
    Assignee: Sun Microsystems, Inc.
    Inventors: Peter C. Damron, Nicolai Kosche
  • Patent number: 6651246
    Abstract: Loop allocation for optimizing compilers includes the generation of a program dependence graph for a source code segment. Control dependence graph representations of the nested loops, from innermost to outermost, are generated and data dependence graph representations are generated for each level of nested loop as constrained by the control dependence graph. An interference graph is generated with the nodes of the data dependence graph. Weights are generated for the edges of the interference graph reflecting the affinity between statements represented by the nodes joined by the edges. Nodes in the interference graph are given weights reflecting resource usage by the statements associated with the nodes. The interference graph is partitioned using a profitability test based on the weights of edges and nodes and on a correctness test based on the reachability of nodes in the data dependence graph. Code is emitted based on the partitioned interference graph.
    Type: Grant
    Filed: May 18, 2000
    Date of Patent: November 18, 2003
    Assignee: International Business Machines Corporation
    Inventors: Roch Georges Archambault, Robert James Blainey
  • Patent number: 6550053
    Abstract: A method of estimating the time a particular designer or any one of a group of designers will take to realize a new design using an object-oriented methodology. The particular version, for each designer, or group of designers, of a formula which links time taken and the number of predetermined types of object-oriented elements, each element type having a respective multiplier for each designer or group of designers, is determined by “training” using the number of the elements employed and the actual time taken, for a number of previous designs, realized by that designer or group of designers. For the new design, the numbers of the elements to be present is determined and this data inserted into the formula with the respective designer's designers' multipliers and an estimate of time obtained.
    Type: Grant
    Filed: April 5, 2000
    Date of Patent: April 15, 2003
    Assignee: International Computers Limited
    Inventor: Stuart Muckley