A transactional file system developed to function with flash memory is
described. The file system provides for efficient storage of file system
meta-information, performs robust transaction logging, and performs other
related features. In one described implementation, metadata is stored
in-line with data. In another embodiment, a transaction log is maintained
by storing transaction information associated with requests to perform
file transactions. The transaction information is stored at arbitrary
physical sector addresses on the flash medium. In still another
embodiment, a transaction log is stored in a physical sector of a flash
medium. The transaction log contains transaction information associated
with performing a file request. Metadata is written into a spare area of
the physical sector indicating that the physical sector contains
transaction information.