Nova Patents
EP0348614A2

Shared file system.

Abstract

A shared file environment permits multiple users to read a file that is being updated concurrently. The process maintains N level shadows for a file to allow multiple users to read a file even though that file may be updated by one or more updaters in succession. A reader of a file does not need to wait on an updater of the file nor does the reader see any updates as they are being made. Each reader that opens the file sees the latest committed level of the file; that is, if reader A opens the file for read before updater B commits his changes, then there will exist one level shadow for the file after B commits. The process maintains N level shadows for a file, although only one updater of a file is allowed at a time. A new construct, referred to as the Not Available Yet (NAY) structure, contains entries for all files that are currently open for read. The NAY structure has an entry for each level of a file that is open for read. A counter associated with the entry indicates the number of readers of that level of the file. These entries are anchors for a list of block numbers of shadow blocks that cannot be unallocated because there is at least one reader of that level. A logging procedure allocates and unallocates blocks to track the N-level shadow blocks.

EP0348614A2, drawing sheet 1
Sheet 1 of 7

Term

Term ended

Projected expiry passed 15 April 2009, 17.4 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

4 claims: 2 independent, 2 dependent

  1. 1
    Method of N-level file shadowing in a data processing system supporting a shared file environment in which multiple users may read a file stored in the system concurrently while the file is being updated, characterized by making an entry in a data structure indicating a current level of the file that has been opened for read whenever a file is opened for read by a reader, thereby generating a record of all readers of any level of the file, and allocating a shadow block for the current level of the file for reading;and when a file is opened for write by an updater, allocating a data block to contain updates to the file by the updater.
  2. 2
    Method of N-level file shadowing recited in claim 1, characterized by incrementing the level of the file and unallocating said data block when updates to the file are committed by the updater;by checking to see if there are any readers of a prior level of the file and, if there are readers of a prior level, chaining shadow blocks for each level;and when a last reader of the file closes, unallocating any shadow blocks chained from the entry for that file.