Patent ID: 7076599

Claim:
A computer for storing data on a flash medium, comprising: one or more processors; and a file system, the file system configured to store data on the flash medium as a series of linked lists by storing pointers in each physical sector of the flash medium in which valid data is also stored, wherein each pointer indicates a next physical sector in the flash medium in which valid data is located, the file system further comprising: a sector manager comprising a write pointer that indicates a physical sector that is free to receive new data, the write pointer configured to advance through the physical sectors on the flash medium as data is written on the flash memory medium; and a power failure manager configured to store a data valid bit in each physical sector indicated by the write pointer at completion of writing data to the physical sector indicated by the write pointer, wherein the power failure manager is further configured to (i) search the physical sector indicated by the write pointer when the file system is initialized to ascertain whether the data valid bit exists in the physical sector; (ii) conclude that a power-failure event occurred, if the data valid bit is not found in the physical sector; and (iii) mark the physical sector dirty if the power-failure event occurred.