Patent EP1003103A2 successfully refreshed from Google Patents.
← Back to Patent Explorer
EP1003103A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Write anywhere file-system layout

Assignee: NetApp Inc
•
Filing: 1994-06-02
•
Granted: —
•
Expires: 2014-06-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention provides a method for keeping a file system in a consistent state and for creating read-only copies of a file system. Changes to the file system are tightly controlled. The file system progresses from one consistent state to another. The set of self-consistent blocks on disk that is rooted by the root inode is referred to as a consistency point. To implement consistency points, new data is written to unallocated blocks on disk. A new consistency point occurs when the fsinfo block (2440) is updated by writing a new root inode for the inode file (1210) into it. Thus, as long as the root inode is not updated, the state of the file system represented on disk does not change. The present invention also creates snapshots (Figure 22) that are read-only copies of the file system. A snapshot uses no disk space when it is initially created. It is designed so that many different snap shots can be created for the same file system. Unlike prior art file systems that create a clone by duplicating the entire inode file and all of the indirect blocks, the present invention duplicates only the inode that describes the inode file. A multi-bit free-block map file (1630) is used to prevent data from being overwritten on disk.

Inventors

  • 👤 David Hitz
  • 👤 Michael Malcom
  • 👤 James Lau
  • 👤 Byron Rakitzis

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-05 09:35
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F11/1435; G06F16/00; G06F16/10; G06F16/17; G06F16/174; G06F2201/00; G06F2201/84; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99954

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 87 words
A method for recording a plurality of data about a plurality of blocks of data stored in storage means, the method comprising the steps of: maintaining a means for recording multiple usage bits per block of said storage means; storing, in said means for recording multiple usage bits per block, multiple bits for each of said plurality of said blocks of said storage means; and reusing at least one of said plurality of blocks of data in response to at least one of said multiple usage bits.
Claim 2
Independent Claim 143 words
A method for maintaining a file system comprising blocks of data stored in blocks of a non-volatile storage means at successive consistency points, the method comprising the steps of: storing a first file system information structure for a first consistency point in said non-volatile storage means, said first file system information structure comprising data describing a layout of said file system at said first consistency point of said file system; writing blocks of data of said file system that have been modified from said first consistency point as of the commencement of a second consistency point to free blocks of said non-volatile storage means; storing in said non-volatile storage means a second file system information structure for second consistency point, said second file system information structure comprising data describing a layout said file system at said second consistency point of said file system.
Claim 3
Dependent Claim 115 words
A method according to claim 2, wherein said step of storing said first file system information structure in said non-volatile storage means comprises the step of: storing first and second copies of said first file system information structure at first and second locations respectively of said non-volatile storage means; and wherein said step of storing said second file system information structure in said non-volatile storage means comprises the steps of: overwriting said first copy of said first file system information structure with a first copy of said second file system information structure; and overwriting said second copy of said first file system information structure with a second copy of said second file system information structure.
Claim 4
Dependent Claim 26 words
A method according to claim 3, wherein said first and second locations of said non-volatile storage means comprise fixed pre-determined locations of said non-volatile storage means.
Claim 5
Dependent Claim 97 words
A method according to claim 3 or 4, wherein each copy of said file system information structure comprises means for determining a most recent version of said file system information structure and means for determining validity of said file system information structure, the method further comprising the steps of: after a system failure, reading said first and second copies of said file system information structure from said first and second locations of said non-volatile storage means; determining a most recent valid file system information structure from said first and second copies of said file system information structure.
Claim 6
Independent Claim 114 words
A method for creating a plurality of read-only copies of a file system stored in blocks of a non-volatile storage means, said file system comprising meta-data identifying blocks of said non-volatile storage means used by said file system, the method comprising the steps of: storing meta-data for successive states of said file system in said non-volatile storage means; making a copy of said meta-data at each of a plurality of said states of said file system; for each of said copies of said meta-data at a respective state of said file system, marking said blocks of said non-volatile storage means identified in said meta-data as comprising a respective read-only copy of said file system.
Claim 7
Dependent Claim 42 words
A method according to claim 6, wherein said step of marking said blocks comprising a respective read-only copy of said file system comprises placing an appropriate entry in a means for recording multiple usage bits per block of said non-volatile storage means.
Claim 8
Dependent Claim 32 words
A method according to claim 7 wherein said means for recording multiple usage bits per block of said non-volatile storage means comprises a block map comprising multiple bit entries for each block.
Claim 9
Dependent Claim 24 words
A method according to claim 6, 7 or 8, wherein said meta-data comprises pointers to a hierarchical tree of blocks comprising said file system.
Claim 10
Dependent Claim 21 words
A method according to claim 6, 7, 8 or 9, wherein said meta-data comprises structures representing files of said file system.
Claim 11
Dependent Claim 17 words
A method according to claim 10, wherein said structures representing files of said file system comprise modes.
Claim 12
Independent Claim 32 words
A method according to any one of claims 6 to 11, further comprising the step of: preventing overwriting of said blocks marked as belonging to a read-only copy of said file system.
Claim 13
Independent Claim 41 words
A method according to any one of claims 6 to 12, comprising the step of unmarking said blocks marked as belonging to a read-only copy of said file system when said read-only copy of said file system is no longer needed.
Claim 14
Independent Claim 66 words
A method according to any one of claims 6 to 13, wherein a plurality of said blocks marked as belonging to a read-only copy of said file system comprise data ancillary to said file system, said method further including the steps of: allowing said ancillary data to be overwritten; and otherwise preventing overwriting of said blocks marked as comprising a read-only copy of said file system.
Claim 15
Dependent Claim 14 words
A method according to claim 14 wherein said ancillary data comprises access time data.
Claim 16
Independent Claim 39 words
A method according to any one of claims 6 to 15, wherein said meta-data comprises a root structure referencing structures representing files of said file system, and wherein said copies of said meta-data comprise copies of said root structure.
Claim 17
Dependent Claim 14 words
A method according to claim 16, wherein said root structure comprises a root inode.
Claim 18
Independent Claim 42 words
A method according to any one of claims 6 to 17, further comprising the step of using one or more of said read-only copies of said file system to back-up said blocks comprising one or more consistency points of said file system.
Claim 19
Dependent Claim 80 words
Apparatus for reading a plurality of blocks of data stored in storage means; the apparatus comprising: usage bit recording means for recording multiple usage bits for each block of said storage means; storing means for writing multiple bits per block of said storage means to said usage bit recording means; recording means for recording data to said storage means to reuse at least one of said plurality of blocks in response to at least one of said multiple usage bits.
Claim 20
Dependent Claim 141 words
Apparatus for maintaining a file system comprising blocks of data stored in blocks of non-volatile storage means at successive first and second consistency points, the apparatus comprising: first storing means for storing in said non-volatile storage means a first file system information structure for a first consistency point, said first file system information structure comprising data describing a layout of said file system at said first consistency point thereof; writing means for writing blocks of data of said file system that have been modified from said first consistency point to free blocks of said file system; second storage means for storing in said non-volatile storage means a second file system information structure for said second consistency point, said second file system information structure comprising data describing a layout of said file system at said second consistency point of said file system.
Claim 21
Dependent Claim 64 words
Apparatus according to claim 20, wherein said first storing means is adapted to store first and second copies of said first file system information structure at first and second locations respectively; and said second storing means is adapted to overwrite said first and second copies of said first file system information structure with first and second copies of said second file system information structure.
Claim 22
Dependent Claim 108 words
Apparatus for creating a plurality of read-only copies of a file system stored in blocks of a non-volatile storage means, said file system comprising meta-data identifying blocks of said non-volatile storage means used by said file system, the apparatus comprising: storing means for storing meta-data for successive states of said file system in said non-volatile storage means; copying means for making a copy of said meta-data at each of a plurality of said states of said file system; and marking means, operative for each of said copies of said meta-data, for marking said blocks identified in said meta-data as comprising a respective read-only copy of said file system.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag