×

Transactional protocol and system for implementing it

  • US 5,657,474 A
  • Filed: 11/20/1995
  • Issued: 08/12/1997
  • Est. Priority Date: 11/21/1994
  • Status: Expired due to Fees
First Claim
Patent Images

1. Transactional protocol for data stored in a memory wherein, during a transaction including writing of a new value of at least one variable stored in a register of said memory, a read operation consists in, for each variable:

  • allocating a read lock prohibiting writing to said transaction for said register;

    then reading the content of said register;

    and a write operation consists in, for each variable;

    allocating a write intention lock to said transaction for said register prohibiting writing in said register by any transaction other than said transaction, but allowing reading;

    associating a log register with said register and storing therein said new value of said variable;

    and the closure of said transaction essentially consists in;

    determining each register to which a write intention lock has been allocated for said transaction to be closed;

    releasing any write lock allocated to said transaction to be closed;

    then, for any register holding a write intention lock, for said transaction to be closed, verifying that there remains no read lock allocated to any other transaction for said register;

    if at least one read lock remains for a time period exceeding a fixed limit, executing a procedure to abort said transaction to be closed;

    or otherwise converting said write intention lock into a write lock;

    then, for any register holding a write lock for said transaction to be closed;

    transferring said new value of said variable from said log to said register;

    and releasing said write lock allocated to said transaction to be closed for said register;

    then sending a "transaction deemed completed" message to an application that requested closure of said transaction;

    and said procedure for aborting said transaction to be closed consists in, for any register holding a write lock or write intention lock;

    clearing the content of each log storing the value of a variable modified by the aborted transaction;

    then releasing write locks and write intention locks allocated to said aborted transaction;

    then sending a "transaction aborted" message to said application that requested closure of said transaction.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×