Patents by Inventor James H. Waldo

James H. Waldo 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: 9183066
    Abstract: Use of a smart proxy as a wrapper around a stub in a distributed system. Instead of receiving a stub as a result of a remote procedure call, a caller receives a smart proxy including the stub as an embedded object. The smart proxy performs predefined processing associated with a remote procedure call, the processing possibly occurring before, during, or after a response to the call.
    Type: Grant
    Filed: May 6, 2002
    Date of Patent: November 10, 2015
    Assignee: Oracle America Inc.
    Inventors: Kenneth C. R. C. Arnold, James H. Waldo, Robert Scheifler, Ann M. Wollrath
  • Patent number: 9146789
    Abstract: Location-independent references include a live reference containing a location of a remote object and a universally unique identifier (UUID) which provides a unique global reference to that remote object. If a method call to the remote object using the live reference fails, the UUID is used to obtain a new reference to the remote object and the new reference is then used to make another method call. A new reference can be obtained from an identifier directory that contains a mapping between UUIDs and location-independent references. When a remote object is first created, or when a remote object is moved from one location to another, the remote object registers with any and all such directories that it can find in its environment. These registrations are leased; that is, if they are not occasionally refreshed by the remote object which registered them, they are dropped from the directory.
    Type: Grant
    Filed: March 21, 2006
    Date of Patent: September 29, 2015
    Assignee: Oracle America, Inc.
    Inventors: James H. Waldo, Timothy J. Blackman, Daniel J. Ellard, Robert F. Sproull, Jane A. Loizeaux, Michael P. Warres
  • Patent number: 8713089
    Abstract: An improved lookup service is provided that allows for the dynamic addition and deletion of services. This lookup service allows for the addition and deletion of services automatically, without user intervention. As a result, clients of the lookup service may continue using the lookup service and its associated services while the updates occur. Additionally, the lookup service provides a notification mechanism that can be used by clients to receive a notification when the lookup service is updated. By receiving such a notification, clients can avoid attempting to access a service that is no longer available and can make use of new services as soon as they are added to the lookup service.
    Type: Grant
    Filed: April 8, 2003
    Date of Patent: April 29, 2014
    Assignee: Oracle America, Inc.
    Inventors: Brian T. Murphy, Robert W. Scheifler, Zane Pan, James H. Waldo, Ann M. Wollrath, Kenneth C. R. C. Arnold
  • Patent number: 8380843
    Abstract: In at least one embodiment, an apparatus for determining one or more affinity groups in a distributed network is provided. A first distributed computing device is operably coupled to a plurality of clients for enabling electronic interactive activities therebetween. The first distributed computing device is configured to detect at least one network interaction among the plurality of clients. The first distributed computing device is further configured to generate at least one weighted value based on the number of detected network interactions. The first distributed computing device is further configured to establish an affinity group comprising at least one client from the plurality of clients based on the at least one weighted value.
    Type: Grant
    Filed: September 10, 2009
    Date of Patent: February 19, 2013
    Assignee: Oracle America, Inc.
    Inventors: Jane Alice Loizeaux, James H. Waldo, Keith Benjamin Thompson
  • Patent number: 8117443
    Abstract: Universal Unique Identifiers (UUIDs) are generated using a variety of algorithms and these algorithms are themselves encoded into the UUID. Each UUID includes two parts: a first part that is an identifier, which is unique to the second part. The second part identifies the algorithm that was used to generate the identifier. Thus, the uniqueness of the identifier is based on how the identifier was created not the entity that created it. The identity of two UUIDs is determined by comparing both the generator algorithm ID and the relative ID.
    Type: Grant
    Filed: October 5, 2005
    Date of Patent: February 14, 2012
    Assignee: Oracle America, Inc.
    Inventors: James H. Waldo, Timothy Blackman, Robert Sproull
  • Publication number: 20110060821
    Abstract: In at least one embodiment, an apparatus for determining one or more affinity groups in a distributed network is provided. A first distributed computing device is operably coupled to a plurality of clients for enabling electronic interactive activities therebetween. The first distributed computing device is configured to detect at least one network interaction among the plurality of clients. The first distributed computing device is further configured to generate at least one weighted value based on the number of detected network interactions. The first distributed computing device is further configured to establish an affinity group comprising at least one client from the plurality of clients based on the at least one weighted value.
    Type: Application
    Filed: September 10, 2009
    Publication date: March 10, 2011
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: Jane Alice Loizeaux, James H. Waldo, Keith Benjamin Thompson
  • Patent number: 7836440
    Abstract: A method for using dependency-based grouping to establish class identity comprises categorizing a plurality of classes into a set of class groups based at least in part on one or more dependencies between the classes, and generating metadata to be use for loading the classes, where the metadata includes a mapping between the set of class groups and the plurality of classes. The metadata may also include respective signatures for class groups and/or the individual classes. The method may also include validating, using at least a portion of the metadata, the identity of a particular version of a class of the plurality of classes, prior to loading the version for execution.
    Type: Grant
    Filed: April 27, 2006
    Date of Patent: November 16, 2010
    Assignee: Oracle America, Inc.
    Inventors: Timothy J. Blackman, James H. Waldo
  • Patent number: 7734747
    Abstract: An improved lookup service is provided that allows for the dynamic addition and deletion of services. This lookup service allows for the addition and deletion of services automatically, without user intervention. As a result, clients of the lookup service may continue using the lookup service and its associated services while the updates occur. Additionally, the lookup service provides a notification mechanism that can be used by clients to receive a notification when the lookup service is updated. By receiving such a notification, clients can avoid attempting to access a service that is no longer available and can make use of new services as soon as they are added to the lookup service.
    Type: Grant
    Filed: September 25, 2003
    Date of Patent: June 8, 2010
    Assignee: Oracle America, Inc.
    Inventors: Brian T. Murphy, Robert W. Scheifler, Zane Pan, James H. Waldo, Ann M. Wollrath, Kenneth C. R. C. Arnold
  • Patent number: 7509360
    Abstract: In accordance with the present invention a process is provided for allocating and deallocating resources in a distributed processing system having a requester platform and a server platform. The process involves receiving a request from the requestor platform referring to a system resource and specifying a requested lease period, permitting shared access to the system resource for a lease period, sending a return call to the requestor platform advising of the lease period, and deallocating the system resource when the lease period expires.
    Type: Grant
    Filed: July 12, 2004
    Date of Patent: March 24, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Ann M. Wollrath, James H. Waldo, Roger Riggs
  • Patent number: 7210148
    Abstract: A homogeneous execution environment operates within a heterogeneous client-server network. A client selects a server and transmits a procedure call with parameters. In response, a server dynamically and securely downloads code to a compute server; invokes a generic compute method; executes the code on the compute server; and returns the results to the calling client method, preserving the result on the compute server if requested. This technique is efficient in that it does not require multiple copies of code to be downloaded or compiled since server byte-codes can be executed on each of the different systems, therefore downloading or compiling multiple copies of code can be avoided. The code can be compiled once and downloaded as needed to the various servers as byte-codes and then executed.
    Type: Grant
    Filed: March 16, 2001
    Date of Patent: April 24, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Kenneth C. R. C. Arnold, James H. Waldo, Ann M. Wollrath, Peter C. Jones
  • Patent number: 7089263
    Abstract: Use of a policy object for verification in a distributed system. A machine downloads a policy object containing a reference to code governing verification of data. The machine uses the reference to obtain the code and locally verify data or other information. As particular rules for the data change, the policy object may be updated to provide a reference to the code for the new rules when it is downloaded.
    Type: Grant
    Filed: May 10, 2002
    Date of Patent: August 8, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Kenneth C. R. C. Arnold, Ann M. Wollrath, James H. Waldo
  • Patent number: 7058954
    Abstract: A stub retrieval and loading subsystem is disclosed for use in connection with a remote method invocation system. The stub retrieval and loading subsystem controls the retrieval and loading of a stub for a remote method, into an execution environment, to facilitate invocation of the remote method by a program executing in the execution environment. The stub retrieval subsystem includes a stub retriever for initiating a retrieval of the stub and stub loader for, when the stub is received by the stub retriever, loading the stub into the execution environment, thereby to make the stub available for use in remote invocation of the remote method. In one embodiment, the stub retrieval and loading subsystem effects the retrieval and loading for a program operating in one address space provided by one computer, of stub class instances to effect the remote invocation of methods which are provided by objects operating in another address space, which may be provided by the same computer or a different computer.
    Type: Grant
    Filed: May 22, 1998
    Date of Patent: June 6, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Ann M. Wollrath, James H. Waldo, Roger Riggs
  • Patent number: 6983285
    Abstract: Use of a policy object for verification in a distributed system. A machine downloads a policy object containing a reference to code governing verification of data. The machine uses the reference to obtain the code and locally verify data or other information. As particular rules for the data change, the policy object may be updated to provide a reference to the code for the new rules when it is downloaded.
    Type: Grant
    Filed: May 10, 2002
    Date of Patent: January 3, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Kenneth C. R. C. Arnold, Ann M. Wollrath, James H. Waldo
  • Patent number: 6957427
    Abstract: A distributed computer system uses a single interface at the client site to handle calls to call both active and passive remote objects. Accordingly, the calling process does not need to be aware of distinctions between active and passive objects. Further, remote objects are aggregated into common groups of objects, thereby providing greater security between objects of disparate groups and efficiency between related objects of the same group. Preferably, different groups are run on different Java virtual machines.
    Type: Grant
    Filed: October 15, 1997
    Date of Patent: October 18, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Ann M. Wollrath, Peter C. Jones, James H. Waldo, Robert W. Scheifler
  • Patent number: 6938263
    Abstract: A stub retrieval and loading subsystem is disclosed for use in connection with a remote method invocation system. The stub retrieval and loading subsystem controls the retrieval and loading of a stub for a remote method, into an execution environment, to facilitate invocation of the remote method by a program executing in the execution environment. The stub retrieval subsystem includes a stub retriever for initiating a retrieval of the stub and stub loader for, when the stub is received by the stub retriever, loading the stub into the execution environment, thereby to make the stub available for use in remote invocation of the remote method. In one embodiment, the stub retrieval and loading subsystem effects the retrieval and loading for a program operating in one address space provided by one computer, of stub class instances to effect the remote invocation of methods which are provided by objects operating in another address space, which may be provided by the same computer or a different computer.
    Type: Grant
    Filed: April 23, 1996
    Date of Patent: August 30, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Ann M. Wollrath, James H. Waldo, Roger Riggs
  • Patent number: 6925644
    Abstract: A system for leasing a group membership in a distributed processing system is provided. In accordance with this system, a remote object requests from an activation group a membership in the activation group for a period of time. Responsive to this request, the activation group determines an appropriate lease period during which time the remote object becomes a member of the activation group and runs in the same address space as other objects of the activation group.
    Type: Grant
    Filed: January 31, 2003
    Date of Patent: August 2, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: James H. Waldo, Ann M. Wollrath, Robert Scheifler, Kenneth C. R. C. Arnold
  • Patent number: 6901518
    Abstract: A system consistent with the present invention enables a program in a distributed system to determine whether downloaded code is trustworthy before using the downloaded code to communicate with other programs or services in the distributed system. A client that downloads proxy code from a service can verify that both the service and the downloaded code are trustworthy before using the code to communicate with the service. “Trustworthy” code is code the client knows will enforce the client's security constraints in communicating with the service, e.g., mutual authentication, confidentiality, and integrity.
    Type: Grant
    Filed: April 6, 2000
    Date of Patent: May 31, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Robert W. Scheifler, James H. Waldo, Peter C. Jones
  • Patent number: 6832223
    Abstract: Methods and systems are provided that facilitate access to a service via a lookup service. A lookup service defines a network's directory of services and stores references to these services. A client desiring use of a service on the network accesses the lookup service, which returns the stub information that facilitates the user's access of the service. The client uses the stub information to access the service.
    Type: Grant
    Filed: March 20, 1998
    Date of Patent: December 14, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Robert W. Scheifler, Ann M. Wollrath, James H. Waldo
  • Patent number: 6816875
    Abstract: In accordance with the present invention a process is provided for allocating and deallocating resources in a distributed processing system having a requester platform and a server platform. The process involves receiving a request from the requestor platform referring to a system resource and specifying a requested lease period, permitting shared access to the system resource for a lease period, sending a return call to the requestor platform advising of the lease period, and deallocating the system resource when the lease period expires.
    Type: Grant
    Filed: June 19, 2003
    Date of Patent: November 9, 2004
    Inventors: Ann W. Wollrath, James H. Waldo, Roger Riggs
  • Patent number: 6772162
    Abstract: In accordance with methods and systems consistent with the present invention, a lease manager is provided for managing leases between clients and other network services. To use the lease manager, a client enters into a management lease with the lease manager, specifying an amount of time during which the lease manager can manage preexisting leases between the client and network services on behalf of the client. This management includes renewing the preexisting leases with the other network services. Further, the lease manager notifies the client when a lease between the lease manager and the client is near expiration. The lease manager also notifies the client of failed attempts to renew the preexisting leases, as well as the management lease, either with a network service or with the lease manager.
    Type: Grant
    Filed: November 6, 2002
    Date of Patent: August 3, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: James H. Waldo, John W. F. McClain