×

Optimized startup verification of file system integrity

  • US 7,970,803 B2
  • Filed: 07/01/2005
  • Issued: 06/28/2011
  • Est. Priority Date: 07/01/2005
  • Status: Active Grant
First Claim
Patent Images

1. A computer system comprising:

  • a persistent data storage device;

    a file system code for managing data and a file system structure of files stored on the persistent data storage device;

    a transaction file maintained by the file system code and stored on the persistent data storage device;

    where the transaction file includes a plurality of transaction records, each of the plurality of transaction records comprises a header section and a data section, and each of the plurality of transaction records represents a file transaction affecting at least one of the files stored on the persistent data storage device;

    where header data in the header section of each transaction record of the plurality of transaction records corresponds to the file transaction represented by the each transaction record of the plurality of transaction records and identifies the at least one of the files affected by the file transaction, and the data section of the each transaction record of the plurality of transaction records contains file data for the at least one of the files identified in the header section of the each transaction record of the plurality of transaction records, where the header section includes a first error correction code for verifying and correcting the header data of the header section of the each transaction record of the plurality of transaction records, and where the header section further includes a second error correction code for verifying and correcting the file data of the data section of the each transaction record of the plurality of transaction records;

    where the file system code is executable to implement a startup process in which a reconstructed file system is generated in a random access memory using the plurality of transaction records of the transaction file;

    where, when the header data in the header section of a transaction record of the plurality of transaction records meets a first predetermined criterion, the startup process applies the first error correction code to verify and, if required, correct the header data of the header section of the transaction record of the plurality of transaction records while skipping verification and correction of the file data of the data section of the transaction record of the plurality of transaction records as the startup process uses the transaction record of the plurality of transaction records to generate the reconstructed file system; and

    where, when the header data in the header section of the transaction record of the plurality of transaction records meets a second predetermined criterion, the startup process verifies and, if required, corrects both the header data of the header section and the file data of the data section of the transaction record of the plurality of transaction records as the startup process uses the transaction record of the plurality of transaction records to generate the reconstructed file system, where the first error correction code is applied by the startup process to verify and, if required, correct the header data of the header section of the transaction record of the plurality of transaction records, and the second error correction code is applied by the startup process to verify and, if required, correct the file data of the data section of the transaction record of the plurality of transaction records.

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