Patents by Inventor Richard J. Smith, Jr.

Richard J. Smith, Jr. has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 6769124
    Abstract: A method and apparatus for persistently storing information objects in a secondary store is provided. Each object to be stored persistently is made a subclass of a persistent object class. The persistent object declares metadata that defines parameters of a table in the secondary store in which instances of the object are stored, and external requirements of the object. When a persistent object inherits attributes from one or more parent object classes, instances of each parent class are represented in separate tables. When a persistent object is read or written by an application program, methods in the persistent object class automatically retrieve or store information for each field of the persistent object by recursively calling a read method or a write method for each class from which the persistent object inherits, and the object's own class. The read method and write methods automatically create and submit commands to the secondary store.
    Type: Grant
    Filed: July 22, 1998
    Date of Patent: July 27, 2004
    Assignee: Cisco Technology, Inc.
    Inventors: Charles B. Schoening, Richard J. Smith, Jr., Stephen I. Schleimer
  • Patent number: 6505228
    Abstract: A method and apparatus is disclosed for dynamically determining the order of execution of a plurality of computer program components. A characterization mechanism provides an annotation of each executable component. A partial order mechanism depends upon the characterization mechanism, and enables a first executable component to declare which other executable components, times, data sets, or other resources are pre-conditions to execution of the first executable component. At load time, a partial order evaluator resolves the pre-conditions and generates a final order of execution of the components based upon interdependencies and resource requirements represented in the pre-conditions. In a preferred embodiment, the pre-conditions are stored in an acyclic directed graph, and the final order is generated by making a breadth-first traversal of the graph and adding nodes of the graph to the final order in the order in which the nodes are traversed.
    Type: Grant
    Filed: July 22, 1998
    Date of Patent: January 7, 2003
    Assignee: Cisco Technology, Inc.
    Inventors: Charles B. Schoening, Richard J. Smith, Jr., Stephen I. Schleimer
  • Patent number: 6226788
    Abstract: In a network management system, a method and apparatus for preparing a computer program for execution in relation to a particular network device among a plurality of network devices having a plurality of device types is provided. Each network device is associated with a device type value, and each network device has an associated device mapper. The device mappers are stored in a hierarchical structure that reflects a functional relationship or family relationship of the devices. Functions to be carried out by one or more devices are expressed as a plurality of executable program components. Preferably, each executable program component has one or more classes that define executable functions. Each device mapper associates a device type value with one or more overridden classes in the executable program components and one or more overriding classes. At runtime, device type values are acquired for each device in the managed network.
    Type: Grant
    Filed: July 22, 1998
    Date of Patent: May 1, 2001
    Assignee: Cisco Technology, Inc.
    Inventors: Charles B. Schoening, Richard J. Smith, Jr., Stephen I. Schleimer
  • Patent number: 6205465
    Abstract: A method and apparatus for parallel processing is provided. A parallel execution object organizes and initiates execution of two or more parallel processing threads that act on members in the context of a transaction. The members comprise one or more sets of data for which parallel processing is needed, for example, sets of network device data. The threads are organized by receiving a set of execution components that have a partial order defined by preconditions and resource requirements. A partial order evaluator resolves the partial order into a final order of execution of the components. The parallel execution object, members, transaction, and partial order can be declared in the context of an application program. Optionally, the threads are organized by selecting execution components that are optimized for use with a particular current phase of execution of the application program.
    Type: Grant
    Filed: July 22, 1998
    Date of Patent: March 20, 2001
    Assignee: Cisco Technology, Inc.
    Inventors: Charles B. Schoening, Richard J. Smith, Jr., Stephen I. Schleimer
  • Patent number: 4215658
    Abstract: A kit for converting an automobile engine from a conventional water pump driven by mechanical engine power to electrical drive which is separately controllable independently of engine operation. The kit includes a conventional air conditioning blower motor, and a bracket which permits motion of the electric motor on the bracket, whereby the motor, belts, pulleys, etc. can be changed without having to remove the bracket from the water pump on the engine.
    Type: Grant
    Filed: June 9, 1977
    Date of Patent: August 5, 1980
    Assignee: W. R. Grace & Co.
    Inventors: Richard J. Smith, Jr., Ralph R. Bellino