Transactional file system for flash memory
First Claim
1. In a computer having a flash medium, a method for recording a transaction log, comprising:
- receiving requests to perform file transactions;
storing transaction information associated with the file transactions at arbitrary physical sectors having addresses from among all valid physical sector addresses on the flash medium; and
marking at least one of the arbitrary physical sectors containing transaction information as dirty when at least one of the file transactions corresponding to the transaction information is completed.
2 Assignments
0 Petitions
Accused Products
Abstract
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.
-
Citations
41 Claims
-
1. In a computer having a flash medium, a method for recording a transaction log, comprising:
-
receiving requests to perform file transactions; storing transaction information associated with the file transactions at arbitrary physical sectors having addresses from among all valid physical sector addresses on the flash medium; and marking at least one of the arbitrary physical sectors containing transaction information as dirty when at least one of the file transactions corresponding to the transaction information is completed. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer, comprising:
-
a processor; a flash medium containing physical sectors, wherein each sector has an address; and a file system configured to perform a file transaction, wherein the file system is configured to maintain a transaction log of the file transaction by storing transaction information associated with the file transaction at an arbitrary physical sector chosen from among all valid physical sector addresses on the flash medium, and further wherein the file system is configured to mark the chosen arbitrary physical sector containing the transaction information as dirty when the file transaction corresponding to the transaction information is completed. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. One or more computer-readable media comprising computer executable instructions that, when executed, direct a computer to:
-
receive requests to perform file transactions; record transaction information associated with the file transactions at arbitrary physical sectors on a flash medium, wherein the arbitrary physical sectors include physical sector addresses chosen from among all valid physical sector addresses on the flash medium; and mark at least one of the arbitrary physical sectors containing transaction information dirty when at least one of the file transactions corresponding to the transaction information is completed. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. In a computer having a flash medium containing physical sectors to store data, a method for maintaining a transaction log on the flash medium, comprising:
-
storing a transaction log in an arbitrary physical sector chosen from among all valid physical sector addresses of a flash medium, the transaction log containing information associated with performing a file request; indicating that the physical sector contains a transaction log by writing metadata into a spare area of the physical sector; and marking the physical sector dirty, if the file request is completed. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31)
-
-
32. One or more computer-readable media comprising computer executable instructions that, when executed, direct a computer to:
-
store a transaction log in an arbitrary physical sector chosen from among all valid physical sector addresses of a flash medium, the transaction log containing information associated with performing a file request; indicate that the physical sector contains a transaction log by writing metadata into a spare area of the physical sector; mark the physical sector dirty, if the file request is completed; initialize the computer; scan the physical sectors not marked dirty for the physical sector containing the metadata indicative that the physical sector contains a transaction log; conclude that the file request was not completed after initialization, if the physical sector containing the metadata is located; and attempt to perform the file request specified by the transaction log. - View Dependent Claims (33)
-
-
34. A computer, comprising:
a processor; and
a file system configured to (i) store a transaction log in an arbitrary physical sector chosen from among all valid physical sector addresses of a flash medium, the transaction log containing information associated with performing a file request;
(ii) indicate that the physical sector contains a transaction log by writing metadata into a spare area of the physical sector; and
(iii) mark the physical sector dirty, if the file request is completed.- View Dependent Claims (35, 36, 37, 38, 39, 40)
-
41. A system, comprising:
-
means for storing a transaction log in an arbitrary physical sector chosen from among all valid physical sector addresses of a storage device, the transaction log containing information associated with performing a file request; means for indicating that the physical sector contains a transaction log by writing metadata into a spare area of the physical sector; and means for marking the physical sector dirty, if the file request is completed wherein the physical sector containing the transaction log is located at an arbitrary location on the storage device, wherein the arbitrary location includes any valid address not restricted to a fixed region of addresses on the storage device.
-
Specification