Patents by Inventor Ken M. Cavanaugh

Ken M. Cavanaugh 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: 6016489
    Abstract: In a distributed object system, a stable object iterator provides a list of all persistent objects within a collection of objects. A plurality of iterators are supported in another aspect of the invention. An iterator associates a label with each persistent object in a collection of stable objects. The label indicates whether the associated object was added to or deleted from the collection before or after the inception of an iterator. Multiple persistent iterators are supported by providing an indication of which iterators each persistent object is, or is not, "visible" to. Should an element of the persistent object collection be created after one or more iterators is created, that element is "invisible" to those iterators. Objects that exist when one or more iterators are created remain "visible" to those iterators, even if the object is deleted from the collection while those iterators still exist.
    Type: Grant
    Filed: December 18, 1997
    Date of Patent: January 18, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Ken M. Cavanaugh, Christian J. Callsen
  • Patent number: 5991823
    Abstract: Data structures and various methods for invoking and creating objects are used in a distributed object system in order to implement subcontracts. A subcontract is a selected grouping of basic features or object mechanisms that a system provides for use in managing objects and has associated functions. A subcontract registry is used for creating object references for server objects. The subcontract registry has any number of subcontract objects within it, and each subcontract object may include: a subcontract identifier that identifies the subcontract object, a quality of service list that contains feature name-value pairs, and a create function unique to the subcontract object. An implementation registry is used for registering any number of implementation definitions.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: November 23, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Ken M. Cavanaugh, III, Alan Snyder, Swee Boon Lim, Christian J. Callsen
  • Patent number: 5884022
    Abstract: A method and apparatus for controlling server activation. In the prior art, there exists a race condition between the shutting down of an old server and the starting up of a new server. Further, rapidly restarting servers, such as daemonic servers, are prone to thrashing behavior. However, an embodiment of the invention avoids this undesired behavior by providing an additional "shutting down" state in the server finite state machine running in the ORB daemon. This additional state allows an old server to complete the necessary shut down procedures prior to the startup of a new server. Also, a process is provided for handling servers that are too slow to shut down or start up. A second additional state is provided in the server finite state machine to handle self started servers.
    Type: Grant
    Filed: June 3, 1996
    Date of Patent: March 16, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Christian J. Callsen, Ken M. Cavanaugh
  • Patent number: 5809507
    Abstract: Data structures, methods and devices for implementing persistence data storage such that persistent objects may be efficiently created and accessed in a distributed client/server computing system are disclosed. In one aspect of the invention, a method for managing persistence data for installed persistent objects involves marshaling a persistent object attribute value into a marshal buffer to provide an encoded persistent object attribute value, updating the persistent object attribute value to provide an updated persistent object attribute value, unmarshaling the updated persistent object attribute value from the marshal buffer to provide a decoded updated persistent object attribute value, and writing the decoded updated persistent object attribute value to the data store.
    Type: Grant
    Filed: July 1, 1996
    Date of Patent: September 15, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: Ken M. Cavanaugh, III
  • Patent number: 5727145
    Abstract: In a distributed object computing system, a client makes a call to a daemon process of a host computer in order to communicate with a target object in an object server process. This call uses a particular security mechanism to ensure a secure communication. The daemon process locates the object server and starts it if necessary. The object server provides the daemon process with a list or table of all the particular security mechanisms that it supports. Using a security class identifier provided by the client in the original call, the daemon process selects a particular security mechanism supported by the server, and then returns this new security mechanism along with the server's port to the client. The client constructs a new object reference to the target object and then calls the target object directly using the new security mechanism. The new security mechanism may be different from the original security mechanism used to communicate with the daemon process.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: March 10, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Dan M. Nessett, Christian J. Callsen, Ken M. Cavanaugh, III
  • Patent number: 5724503
    Abstract: A computer system and a computer-implemented method are described which may be used in a distributed client/server computing environment to convert an exception identifier received by a host computing system from a remote device to a more readable message string that corresponds to the exception identifier. The exception identifier is arranged to uniquely identify the exception. Initially, the exception identifier is used to help identify an exception tag that includes a domain name and a message identifier. The message string that corresponds to the exception identifier is then found based at least in part upon the domain name and the message identifier. More specifically, the domain name is used to identify an exception message file that corresponds to the remotely located device. The message identifier is then used to locate a message string within the exception message file that corresponds to the exception indicated by the exception identifier.
    Type: Grant
    Filed: March 31, 1995
    Date of Patent: March 3, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Ron Kleinman, Ken M. Cavanaugh, III, Mark W. Hapner