×

Address level log-based synchronization of shared data

  • US 8,037,476 B1
  • Filed: 10/31/2005
  • Issued: 10/11/2011
  • Est. Priority Date: 09/15/2005
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method, comprising:

  • a given thread of a plurality of concurrently executing threads attempting to acquire a lock on a shared data object to be modified by the given thread; and

    in response to the thread'"'"'s attempt to acquire the lock being unsuccessful, the given thread;

    assuming the role of a slave thread;

    logging at a synchronization log one or more data access operations directed to the shared data object, wherein the one or more data access operations comprise at least one write access operation, and wherein said logging comprises recording addresses and modified data values of data locations targeted for modification by the at least one write access operation;

    waiting for a notification from a thread holding the lock on the shared data object, wherein the thread holding the lock on the shared data object acts as a master thread with respect to the shared data object, wherein the notification indicates whether or not the one or more data access operations logged by the given thread succeeded, wherein a notification indicating that the one or more data access operations logged by the given thread succeeded indicates that the at least one write access operation logged by the given thread was performed on a particular one of two or more versions of the shared data object by the thread holding the lock on the shared data object; and

    wherein the particular one of the two or more versions of the shared data object is accessible as a writable version of the shared data object by the thread holding the lock; and

    receiving the notification from the thread holding the lock on the shared data object.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×