×

Durable atomic storage update manager

  • US 5,469,562 A
  • Filed: 06/26/1992
  • Issued: 11/21/1995
  • Est. Priority Date: 06/26/1992
  • Status: Expired due to Term
First Claim
Patent Images

1. In a computer system including a central processor, a volatile memory, and a storage device for persistently storing data, and capable of executing a program, a method for ensuring proper storage of data intended to be persistently stored, the method comprising the following steps during normal runtime execution:

  • (1) decomposing the program into a plurality of agents;

    (2) associating a chosen said agent with a transaction or subtransaction to be executed;

    (3) providing to each said agent an agent-callable first service for establishing a sequential relationship among each said transaction and subtransaction within a fault tolerant structure;

    (4) providing to each said agent an agent-callable second service for storing on said storage device a log containing information necessary to enable recovery from a transaction or subtransaction encountering a fault;

    (5) each said agent executing said associated transaction or subtransaction by calling said first and second agent-callable services, wherein said associated transaction or subtransaction can generate a further subtransaction during execution, and wherein said second agent-callable service stores recovery information in said log when data modification for said associated transaction or subtransaction is completed;

    (6) atomically maintaining each said transaction or subtransaction in said fault tolerant structure that contains information relating each said agent with a said associated transaction or subtransaction;

    (7) providing each of a plurality of said agents with distinct first agent-specific fault recovery procedures for redoing data modifications produced by execution of said each agent and distinct second agent-specific fault recovery procedures for undoing said data modifications produced by execution of said each agent; and

    (8) when recovering from a fault during execution of said program, sequentially executing said first agent-specific fault recovery procedures for those of said agents having recovery information stored in said log when predefined fault recovery criteria are met and sequentially executing said second agent-specific fault recovery procedures for those of said agents having recovery information stored in said log when said predefined fault recovery criteria are not met.

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