Patents Represented by Attorney Gary S. Flehr, Hohbach, Test, Albritton & Herbert Williams
  • Patent number: 5819255
    Abstract: A system and method for optimizing a database query with improved performance enhancements is herein disclosed. The database query consists of one or more logical expressions. Through the repeated application of one or more rules, the logical expressions are transformed into physical expressions and in some cases, execution plans that implement the database query. Each expression has associated with it a set of group attributes that specifies its characteristic inputs and outputs and a cost that estimates the computational expense for executing the expression. The group attributes are used to categorize similar expressions into groups that are stored in a search data structure. They are also used to track duplicate expressions. The cost associated with an expression is used to guide the search process to consider those expressions that will produce low cost plans.
    Type: Grant
    Filed: December 27, 1996
    Date of Patent: October 6, 1998
    Assignee: Tandem Computers, Inc.
    Inventors: Pedro Celis, Jay Vaishnav, Hansjorg Zeller
  • Patent number: 5815661
    Abstract: A class loader downloads objects and object viewers from remote computer nodes, and invokes locally stored object viewers to view objects. When a user selects an object to view, a conventional downloading of the referenced object is initiated. The class loader, however, utilizes data type information received at the beginning of the object downloading process to determine if a viewer for the referenced object is available on the user's workstation. If an appropriate view is not locally available, the class loader automatically locates an appropriate viewer on the server from which the object is being downloaded, or from any other appropriate server known to the user's workstation. The class loader downloads the located viewer and then invokes a program verification procedure to verify the integrity of the downloaded viewer before the viewer is executed.
    Type: Grant
    Filed: February 20, 1997
    Date of Patent: September 29, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: James A. Gosling
  • Patent number: 5808911
    Abstract: The present invention pertains to a system and method for tracking object references in an object-oriented computing system including a number of independent computing nodes interconnected by a communications link. The reference counting mechanism tracks references to an object at three levels. At a first level, the server handler associated with an object is used to track local references to the object by other user applications within the same domain. At a second level, the inter-process communications facility (i.e., door facility) is used to track object references that are exported to different domains within the same node. At a third level, the kernel object request broker (ORB) is used to track object references that are exported outside the node. When all external object references are released, the ORB notifies the object's server handler of this occurrence. Similarly, the door facility notifies the object's server handler when all inter-domain references have been released.
    Type: Grant
    Filed: June 19, 1997
    Date of Patent: September 15, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Andrew G Tucker, Madhusudhan Talluri, Declan Murphy, Yousef A. Khalidi
  • Patent number: 5805875
    Abstract: A data processing system contains both a scalar processor and a vector processor. The vector processor contains a plurality of functional units, each of which contains a plurality of parallel pipelines. Each of the pipelines contains a plurality of arithmetic and logic units (ALUs) connected via a plurality of data paths, such that data can be communicated between the ALUs during the execution of a vector instruction by the vector functional unit containing the pipeline. The operation performed by each of the cascaded ALUs and the paths through which data is to be communicated between the ALUs during the execution of a vector instruction can be controlled by configuration values held in a scalar register named by the vector instruction. Through the use of this technique, multiple operations upon sets of vector data may be specified in a single short vector instruction, and further, the configuration of the pipelines can be determined dynamically in response to program input.
    Type: Grant
    Filed: September 13, 1996
    Date of Patent: September 8, 1998
    Assignee: International Computer Science Institute
    Inventor: Krste Asanovic
  • Patent number: 5799322
    Abstract: A primary computer system has a database, application programs that modify the local database, and a transaction manager that stores audit records in a local audit trail reflecting those application program modifications to the local database. A plurality of parallel backup systems are used to provide "triple contingency protection" of the data on the primary computer system. However, if the primary system suffers a sudden catastrophic failure, the parallel backup systems will generally be left in inconsistent states. To restart the application programs on one of the backup system, the parallel backup are first synchronized with each other, and then transaction processing is restarted with one of the backup systems as the new primary system, and the other backup systems as the backups to the new primary system.
    Type: Grant
    Filed: January 30, 1997
    Date of Patent: August 25, 1998
    Assignee: Tandem Computer, Inc.
    Inventor: Malcolm Mosher, Jr.
  • Patent number: 5799323
    Abstract: A primary computer system has a database, application programs that modify the local database, and a transaction manager that stores audit records in a local audit trail reflecting those application program modifications to the local database. A plurality of parallel backup systems are used to provide "triple contingency protection" of the data on the primary computer system. However, if the primary system suffers a sudden catastrophic failure, the parallel backup systems will generally be left in inconsistent states. To restart the application programs on one of the backup system, the parallel backup are first synchronized with each other, and then transaction processing is restarted with one of the backup systems as the new primary system, and the other backup systems as the backups to the new primary system.
    Type: Grant
    Filed: January 30, 1997
    Date of Patent: August 25, 1998
    Assignee: Tandem Computers, Inc.
    Inventors: Malcolm Mosher, Jr., Gordon J. Bowring
  • Patent number: 5708709
    Abstract: A system and method for managing the distribution of licensed application programs stored on a server over a distributed computer system maintains control over the program even after the program has been distributed to a client computer from a provider on an information server. Protection may include license expiration date verification, authorized user ID verification, and protection against decompilation and reverse engineering by maintaining the program in an encrypted form until verification of the expiration date and user identity are complete and the program is ready for decoding, loading into the client computer CPU, and execution. A user identifies a program for trial use by any conventional means such as by using a network browser on the World Wide Web. The server recognizes a user request to access the application program. The server may have an agent on the client computer for performing certain predetermined administrative tasks.
    Type: Grant
    Filed: December 8, 1995
    Date of Patent: January 13, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: John R. Rose
  • Patent number: 5619708
    Abstract: A system for generating voice activated computer data entry forms includes a scanner to scan an existing data entry form and to generate a digitized representation of the data entry form. Stored in the system's computer memory is a database for storing information, a voice dictionary and voice syntax files representing voice recognition information. A set of form definition procedures include an imaging procedure for displaying the scanned data entry form on the display and a region definition procedure for enabling a user to indicate regions of the displayed data entry form. Object definition procedures enable a user to define a multiplicity of objects, including form sections, text boxes, and checkbox buttons, and for specifying properties of the defined objects.
    Type: Grant
    Filed: October 25, 1994
    Date of Patent: April 8, 1997
    Assignee: Korteam International, Inc.
    Inventor: Janet C. Ho
  • Patent number: 5617552
    Abstract: A lossless data compression system and method compresses a set of M data words stored in a computer memory. A first table stores data representing last occurrence positions among those of the M data words already processed for all distinct word values. A second table stores for each data word an entry indicating the position, if any, of a most recent prior occurrence of another data word with the same word value. A dictionary index indicates how many distinct data word values have been encountered during processing of M data words.
    Type: Grant
    Filed: February 29, 1996
    Date of Patent: April 1, 1997
    Assignee: Connectix Corporation
    Inventors: Jonathan F. Garber, Jorg A. Brown, Chad P. Walters
  • Patent number: 5617541
    Abstract: A data distribution system has a number of data processing devices interconnected by data transmission media. At least one of the data processing devices transmit data to other data processing devices in the system. The transmitting data processing system includes memory for storing the data to be transmitted, programmable data processing circuitry, and data transmission apparatus for transmitting an encoded representation of the stored message as a sequence of data packets. Priority data, stored in the memory, represents a plurality of assigned priority levels for specified portions of the stored message such that portions of the stored message have respective assigned priority levels. A data encoding program generates an encoded representation of the stored message that includes, for each portion of the stored message, a level of redundant data corresponding to the priority level assigned to that portion of the stored message.
    Type: Grant
    Filed: December 21, 1994
    Date of Patent: April 1, 1997
    Assignee: International Computer Science Institute
    Inventors: Andres Albanese, Michael G. Luby, Johannes F. Bloemer, Jeffrey A. Edmonds
  • Patent number: 5614686
    Abstract: A signal synthesizer uses a digital waveguide network having at least a three dimensional matrix of waveguide sections interconnected by junctions to filter one or more excitation signals so as to generate an array of synthesized output signals. The digital waveguide network has sets of waveguide sections interconnected by junctions. Each waveguide section includes two digital delay lines running parallel to each other for propagating signals in opposite directions and each junction has reflection and propagation coefficients assigned to it for controlling reflection and propagation of signals in the waveguide sections connected to that junction. Except for junctions along boundaries of the digital waveguide matrix, a majority of the junctions are 2.sup.w -way junctions, where W is an integer greater than 1.
    Type: Grant
    Filed: November 27, 1995
    Date of Patent: March 25, 1997
    Assignee: The Board of Trustees of the Leland Stanford Junior University
    Inventors: Scott A. Van Duyne, Julius O. Smith, III
  • Patent number: 5615363
    Abstract: The objects stored in computer's memory include a directed graph of object directories. Each object directory stores object names and object pointers for locating and accessing other objects. A root directory object, which is the starting point for locating any specified object, stores object names and object pointers to a set of first level object directories. Each object has an associated pathname that defines a path through the directed graph of object directories for accessing that object. More particularly, each pathname is a succession of path elements, proceeding from a first path element to a last path element. A default pathname parsing procedure is used for parsing any specified object's pathname, starting with said first path element, until the default pathname parsing procedure accesses an object directory having its own distinct pathname parsing procedure.
    Type: Grant
    Filed: June 1, 1995
    Date of Patent: March 25, 1997
    Assignee: Digital Equipment Corporation
    Inventor: Steven M. Jenness
  • Patent number: 5612535
    Abstract: A spin-split scanning electron microscope (SSSEM) uses a spin-split electron beam interferometer to measure the difference between two electron beam paths. By measuring the difference in path lengths, and/or measuring changes in the relative difference between the two paths as the electron beams are scanned over a surface, the topology of an object's surface may be measured. The measuring changes in the relative difference between the two paths as a material etching or material deposition or growth process is performed, the amount of material added or removed from an object's surface may be metered.
    Type: Grant
    Filed: June 7, 1996
    Date of Patent: March 18, 1997
    Inventor: Youqi Wang
  • Patent number: 5604855
    Abstract: The storyline of a dynamically generated entertainment program, such as a video game, is generated using a matrix of reusable storyline fragments called substories. A set of characters that participate in the storyline is established and a set of reusable substories is defined. Each substory represents a "fragment of a story", usually involving an action by a subject, where the subject is one of the characters. Most substories can be reused multiple times with different ones of the characters being the subject and different ones of the characters being the direct object of the substory. Each substory has a set of possible reaction substories, which are a subset of the defined substories. A plan list stores plan data indicating ones of the substories to be performed at specified times. An initial "seed story" in the form of an initial set of substories is stored in the plan list. The substories stored in the plan list are executed at times corresponding to their respective specified times.
    Type: Grant
    Filed: September 28, 1994
    Date of Patent: February 18, 1997
    Inventor: Christopher C. Crawford
  • Patent number: 5604735
    Abstract: The present invention provides an improvement in circuit switching for a network comprising a switching apparatus including a plurality of transceivers for interfacing directly with a like plurality of nodes. Each of the transceivers has a receive and transmit through port for passing data to and from nodes. Transmitted data includes a connect/disconnect sequence, a first wait sequence, and user data. The switching apparatus further includes circuitry for isolating each transceiver so as to loop back data when not in use and a switching matrix for directly connecting any pair of transceivers. Each of the transceivers includes circuitry for detecting a connect and disconnect sequence and an interface for connection to a serial asynchronous receiver to derive node requests, routing data, priority and other information from the connect sequence detected at the transceiver.
    Type: Grant
    Filed: May 12, 1995
    Date of Patent: February 18, 1997
    Assignee: Finisar Corporation
    Inventors: Frank H. Levinson, Mark J. Farley, Minh Q. Vu, Calvin P.-K. Leung
  • Patent number: 5598562
    Abstract: An object based operating system for a multitasking computer system provides objects which represent the architecture or interrelationships of the system's resources. Access to certain objects is required in order to use corresponding resources in the system. All objects have a consistent data structure, and a consistent method of defining the operations which apply to each type of object. As a result, it is relatively easy to add new types of system objects to the operating system. Waitable objects are used to synchronize the operation of one or more processes with one another or with specified events. The system provides routines for generating new types of waitable objects, and thereby generating a modified operating system, without modifying other aspects of the operating system's kernel.
    Type: Grant
    Filed: March 1, 1994
    Date of Patent: January 28, 1997
    Assignee: Digital Equipment Corporation
    Inventors: David N. Cutler, James W. Kelly, Jr., Frank L. Perazzoli, Jr.
  • Patent number: 5541787
    Abstract: A flexible cable is supported within the sealed disc drive housing, with one end of the cable readily, automatically soldered to the end wires of the spindle motor leads. The opposite or outboard end of the cable terminates in a header comprising a plastic mounting piece to support a multi-pin electrical connector with the pins extending from both sides of the header. Two locating pins are provided on the plastic header outside of a channel for defining the location of a gasket. The conductors in the cable terminate at four connecting pins at one end of the header. With the pins extending both above and below the header piece, immediately upon installation of the printed cable, the conductors to the spindle motor may be accessed so that the spindle motor and other elements of the head disc assembly may be tested during assembly of the complete disc drive.
    Type: Grant
    Filed: February 23, 1994
    Date of Patent: July 30, 1996
    Assignee: Seagate Technology, Inc.
    Inventors: Iraj Jabbari, Mike J. Darling