Patents by Inventor Ken M. Cavanaugh, III

Ken M. Cavanaugh, III 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: 6272557
    Abstract: Methods and devices for reducing computing overhead in a distributed client/server based computing system which utilize an efficient framework for marshaling and unmarshaling argument object references are disclosed. In one aspect of the invention, a method of unmarshaling an argument object reference, which includes a subcontract identifier, that is a part of an argument encapsulated within a marshal buffer involves identifying the subcontract identifier associated with the argument object reference, using the identified subcontract identifier to identify an appropriate associated unmarshal method, and calling the associated unmarshal method. In another aspect of the invention, a method of marshaling an argument object reference, which includes a subcontract identifier, that is a part of an argument encapsulated within a marshal buffer involves invoking a marshal method of a client representation in the argument object reference passing the marshal buffer as an argument to the marshal method.
    Type: Grant
    Filed: February 18, 2000
    Date of Patent: August 7, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Swee Boon Lim, Ken M. Cavanaugh, III, Anita Jindal
  • Patent number: 6212573
    Abstract: Data structures, methods and devices for reducing computing overhead by utilizing threads which are effective to listen for requests for new connections, for new requests for services, and process requests for services in a distributed client/server-based object oriented operating system are disclosed. In one aspect of the invention, a method of processing a request for service from a client, involves listening for a request using a first server side thread which is effective to listen for and process requests on a connection, reading the header of the request using the first server side thread, and processing the request. In another aspect of the invention, a client writes a request for service on a connection between the client and a server using a first client side thread which is effective for dispatching requests and listening for replies to the request, and determines whether a reply from the server is expected in response to the request for service.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: April 3, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Swee Boon Lim, Ken M. Cavanaugh, III, Rohit Garg
  • Patent number: 6189048
    Abstract: Data structures, methods and devices for reducing computing overhead associated with dispatching a distributed object invocation and improving the flexibility of the dispatch framework in a distributed client/server based computing system are disclosed. In one aspect of the invention, a request received on an end point in a transport layer is dispatched from the transport layer to a subcontract in a subcontract layer where the request is partially unmarshaled and dispatched from the subcontract to a skeleton function in a skeleton layer where a servant is invoked.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: February 13, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Swee Boon Lim, Sanjay R. Radia, Ken M. Cavanaugh, III, Christian J. Callsen
  • Patent number: 6044409
    Abstract: Methods and devices for reducing computing overhead in a distributed client/server based computing system which utilize an efficient framework for marshaling and unmarshaling argument object references are disclosed. In one aspect of the invention, a method of unmarshaling an argument object reference, which includes a subcontract identifier, that is a part of an argument encapsulated within a marshal buffer involves identifying the subcontract identifier associated with the argument object reference, using the identified subcontract identifier to identify an appropriate associated unmarshal method, and calling the associated unmarshal method. In another aspect of the invention, a method of marshaling an argument object reference, which includes a subcontract identifier, that is a part of an argument encapsulated within a marshal buffer involves invoking a marshal method of a client representation in the argument object reference passing the marshal buffer as an argument to the marshal method.
    Type: Grant
    Filed: June 26, 1996
    Date of Patent: March 28, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Swee Boon Lim, Ken M. Cavanaugh, III, Anita Jindal
  • 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: 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