U.S. patents available from 1976 to present.
U.S. patent applications available from 2005 to present.

Flexible state sharing and consistency mechanism for interactive applications

Patent 6058416 Issued on May 2, 2000. Estimated Expiration Date: Icon_subject May 22, 2018. Estimated Expiration Date is calculated based on simple USPTO term provisions. It does not account for terminal disclaimers, term adjustments, failure to pay maintenance fees, or other factors which might affect the term of a patent.

Patent References

Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment
Patent #: 5008853
Issued on: 04/16/1991
Inventor: Bly, et al.

Object-oriented collaboration system
Patent #: 5446842
Issued on: 08/29/1995
Inventor: Schaeffer, et al.

Method and apparatus for synchronously sharing data among computer
Patent #: 5583993
Issued on: 12/10/1996
Inventor: Foster, et al.

Method for constructing a data structure which allows data to be shared between programs
Patent #: 5625809
Issued on: 04/29/1997
Inventor: Dysart, et al.

Object oriented system for representing physical locations
Patent #: 5634129
Issued on: 05/27/1997
Inventor: Dickinson

Conference support system which associates a shared object with data relating to said shared object
Patent #: 5694544
Issued on: 12/02/1997
Inventor: Tanigawa, et al.

System for compressing bit maps to be shared and displayed in collaborative tool by client and server systems Patent #: 5915098
Issued on: 06/22/1999
Inventor: Palmer, et al.

Inventors

Assignee

Application

No. 083669 filed on 05/22/1998

US Classes:

709/203, Client/server709/205, Cooperative computer processing719/315Object oriented message

Examiners

Primary: Lim, Krisna

Attorney, Agent or Firm

International Classes

G06F 015/10
G06F 009/00

Abstract

A system, method and computer program storage device providing event and/or state sharing support e.g., for building object-oriented interactive groupware in wide-area distributed environments (such as the Internet). For collaborative applications programmed using events, mechanisms are provided for sharing application-specific events. For example: an event based programming model allows applications to post an event and triggers corresponding ERUs (Event Reaction Unit) in reaction to a received event; preconditions for control activation of ERUs; and event consistency policy objects implement application specified event consistency model. Some policy examples are: a policy in which event order is not guaranteed, but all events are guaranteed to be sent to the ERUs eventually; and a policy that first triggers local ERUs and then posts the event to the server. An out-of-order event is detected using the event notification from the server; and an automatic detection of out-of-order events seen by ERUs in the local workstation in this optimistic event execution model. For applications requiring support for state sharing, an asynchronous model for updating replicated state, which supports atomicity of updates across multiple shared objects is described. Coupled with a flexible marshaling framework, this allows existing application data-structure classes to be easily extended and made shareable. To solve the problem of replica consistency, a novel combination of three mechanisms is used: global locks; detection of incorrect update ordering; and cloning a subset of the shared objects for state re-initialization. To reduce network load due to fine-grained user interaction, a framework for application specified event batching, called Late Event Modification (LEM), enhances the event interface to allow applications to modify the event objects after posting them to the set.

Other References

  • J. Bacon et al., "Using Events to Build Distributed Applications", University of Cambridge, United Kindgom, 15 pages, (1996)
  • H. Chiu et al., "Conferencing Metaphor", IBM Technical Disclosure Bulletin, vol. 36, No. 02, Feb. 1993
  • R. Kordale et al., "Object Caching in a CORBA Compliant System", The USENIX Association, Computing Systems, Title Page, pp. 377-404, vol. 9, No. 4, Fall 1996
  • A. Prakash et al., "Dist View: Support for Building Efficient Collaborative Applications using Replicated Objects", pp. 153-164, CSCW 94- 10/94 Chapel Hill, NC. USA, ACM (1994)
  • C. Schuckmann et al., "Designing object-oriented synchronous groupware with COAST", Computer Supported Cooperative Work '96, pp. 30-38, ACM(1996)
  • Robert Strom et al., "Concurrency Control and View Notification Algorithms for Collaborative Replicated Objects", IEEE, pp. 194-203, May 1997, (1997)
  • S. Greenberg et al., "Real Time Groupware as a Distributed System: Concurrency Control and its Effect on the Interface". pp. 207-217 CSCW 94- 10/94 Chapel Hill, NC, ACM (1994)
  • J. Waldo et al., "Events in a n RPC Based Distributed System", Sun Microsystems Laboratories, Inc., p. 17,(1995)
  • C.A. Elliset al., "Concurrency Control in Groupware Systems", ACM, 0-89791-317-5/89/0005/0399, pp. 399-407, (1989)
  • A. Karsenty et al., An Algorithm for Distributed Groupware Applications), IEEE, Jun. 1993, pp. 195-202, (1993)
  • J.F. Patterson et al., "Rendezvous: An Architecture for Synchronous Multi-User Applications", CSCW '90 Proceedings, Oct. 1990, pp. 317-328
  • Y. Aahlad et al., "Asynchronous Notification Among Distributed Objects", USENIX Association,Conference on Object-Oriented Technologies and Systems, Jun. 17-21 1996, pp. 83-95
  • K. Birman et al., "Lightweight Causal and Atomic Group", ACM Transactions on Computer Systems, vol. 9, No. 3, pp. 272-314, Aug. 1991
  • A. Schmidt et al., "Internet Protocol TrafficAnalysis with Applications for ATM Switch Design", University of Illinois at Urbana-Champaign, 22 pages, (1992
PatentsPlus Images
Enhanced PDF formats
loading...
PatentsPlus: add to cart
PatentsPlus: add to cartSearch-enhanced full patent PDF image
$9.95more info
PatentsPlus: add to cart
PatentsPlus: add to cartIntelligent turbocharged patent PDFs with marked up images
$18.95more info
 
Sign InRegister
Username  
Password   
forgot password?