×

File system having transaction record coalescing

  • US 7,873,683 B2
  • Filed: 06/09/2006
  • Issued: 01/18/2011
  • Est. Priority Date: 07/01/2005
  • Status: Active Grant
First Claim
Patent Images

1. An electronic data system comprising:

  • a flash memory having a stored data;

    a file system code executable to organize and maintain the stored data in one or more files and one or more directories;

    a transaction file maintained by the file system code in the flash memory, the transaction file comprising a plurality of transaction records stored on the flash memory, where the plurality of transaction records correspond to a plurality of transactions that have been, or are to be executed, on the one or more files and/or the one or more directories, where each transaction record of the plurality of transaction records comprises a header section and a data section, where each header section identifies a file of the one or more files and/or a directory of the one or more directories associated with each data section; and

    where the file system code coalesces the plurality of transaction records stored on the flash memory by;

    scanning each header section of each transaction record of the plurality of transaction records to identify a first subset of the plurality of transaction records directed to a same file, a second subset of the plurality of transaction records directed to a same logical portion of a file, and/or a third subset of the plurality of transaction records directed to a same directory, andcombining the first subset of the plurality of transaction records identified during the scanning as directed to the same file into one or more first coalesced transaction records and releasing one or more transaction records of the first subset of the plurality of transaction records identified as directed to the same file as a free memory to thereby reduce an amount of memory used by the transaction file,combining the second subset of the plurality of transaction records identified during the scanning as directed to the same logical portion of the file into one or more second coalesced transaction records and releasing one or more transaction records of the second subset of the plurality of transaction records identified as directed to the same logical portion of the file as the free memory to thereby reduce the amount of memory used by the transaction file, and/orcombining the third subset of the plurality of transaction records identified during the scanning as directed to the same directory into one or more third coalesced transaction records and releasing one or more transaction records of the third subset of the plurality of transaction records identified as directed to the same directory as the free memory to thereby reduce the amount of memory used by the transaction file;

    and where each header section of each transaction record of the plurality of transaction records further comprises a first field used to determine the starting address at which the data section is to be written into the identified file of the one or more files and/or the identified directory of the one or more directories, and a second field used to determine an amount of the identified file of the one or more files and/or the identified directory of the one or more directories that is to be overwritten.

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