Claims Analysis
Total Claims: 14
Claim 1
Independent Claim
271 words
A portable electronic device, including: a flash memory store comprising a plurality of erase blocks; a log-structured file system for storing a plurality of logs of contiguous data records in the flash memory store, for reading data from the flash memory store using a plurality of memory mapped pointers that point to the individual data records, and for cleaning inactive records from the flash memory store in order to make room for additional data, wherein at least one of the logs of contiguous data records stores records that change frequently, and at least one other log stores data records that change infrequently, and wherein the log-structured file system is configured to determine whether a current erase block into which a data record is to be stored includes available space to store the data record, and to clean inactive records from a next erase block adjacent to the current erase block in the flash memory store where the current erase block does not include available space to store the data record; wherein the log-structured file system further includes a plurality of pointers for managing the storing of data to the flash memory store and the cleaning of inactive records from the flash memory store; wherein the plurality of pointers includes a log point indicating a position in the current erase block at which the data record is to be stored, and an erase point indicating a beginning of the next erase block; and wherein the log-structured file system is further configured to determine an amount of available space in the current erase block by comparing the erase point and the log point.
Claim 2
Dependent Claim
271 words
A portable electronic device, including: a flash memory store comprising a plurality of erase blocks; a log-structured file system for storing a plurality of logs of contiguous data records in the flash memory store, for reading data from the flash memory store using a plurality of memory mapped pointers that point to the individual data records, and for cleaning inactive records from the flash memory store in order to make room for additional data, wherein at least one of the logs of contiguous data records stores records that change frequently, and at least one other log stores data records that change infrequently, and wherein the log-structured file system is configured to determine whether a current erase block into which a data record is to be stored includes available space to store the data record, and to clean inactive records from a next erase block adjacent to the current erase block in the flash memory store where the current erase block does not include available space to store the data record; wherein the log-structured file system further includes a plurality of pointers for managing the storing of data to the flash memory store and the cleaning of inactive records from the flash memory store; wherein the plurality of pointers includes a log point indicating a position in the current erase block at which the data record is to be stored, and an erase point indicating a beginning of the next erase block; and wherein the log-structured file system is further configured to determine an amount of available space in the current erase block by comparing the erase point and the log point.
Claim 3
Dependent Claim
56 words
The portable electronic device of claim 1 , wherein the log-structured file system is configured to determine that the current erase block includes available space to store the data record where the amount of available space is greater than a size of the data record and a minimum space required for cleaning the next erase block.
Claim 4
Dependent Claim
47 words
The portable electronic device of claim 2 , wherein the log-structured file system includes active records and inactive records, and wherein the plurality of pointers further includes a clean point indicating a position of a next active record after the erase point in the log-structured file system.
Claim 5
Dependent Claim
63 words
The portable electronic device of claim 3 , wherein the log-structured file system is further configured to mark a particular record in the log-structured file system as inactive, and to move the clean point to a position of a next active record in the log-structured file system, when a new record replacing the particular record is written stored in the log-structured file system.
Claim 6
Dependent Claim
39 words
The portable electronic device of claim 4 , wherein the log-structured file system is further configured to clean inactive records from the next erase block when the clean point is moved to an end of the next erase block.
Claim 7
Dependent Claim
58 words
The portable electronic device of claim 3 , wherein the log-structured file system is further configured to copy active records from the next erase block to the current erase block, and to mark copied active records in the next erase block as inactive where the current erase block does not include available space to store the data record.
Claim 8
Independent Claim
192 words
A method of managing a log-structured file system in a flash memory comprising a plurality of erase blocks, the log-structured file system storing a plurality of logs of contiguous records in the flash memory store, the method comprising the steps of: receiving a data record to be written into a current erase block in the flash memory store; determining whether the current erase block includes available space to write the data record; and cleaning inactive records from a next erase block adjacent to the current erase block in the flash memory store where the current erase block does not include available space to write the data record; wherein the log-structured file system further comprises a plurality of pointers, the plurality of pointers including a log point indicating a position in the current erase block at which the data record is to be written, and an erase point indicating a beginning of the next erase block, and wherein the step of determining whether the current erase block includes available space to write the data record comprises the step of determining an amount of available space between the erase point and the log point.
Claim 9
Independent Claim
192 words
A method of managing a log-structured file system in a flash memory comprising a plurality of erase blocks, the log-structured file system storing a plurality of logs of contiguous records in the flash memory store, the method comprising the steps of: receiving a data record to be written into a current erase block in the flash memory store; determining whether the current erase block includes available space to write the data record; and cleaning inactive records from a next erase block adjacent to the current erase block in the flash memory store where the current erase block does not include available space to write the data record; wherein the log-structured file system further comprises a plurality of pointers, the plurality of pointers including a log point indicating a position in the current erase block at which the data record is to be written, and an erase point indicating a beginning of the next erase block, and wherein the step of determining whether the current erase block includes available space to write the data record comprises the step of determining an amount of available space between the erase point and the log point.
Claim 10
Dependent Claim
45 words
The method of claim 7 , wherein the step of receiving a data record comprises the step of receiving a data record from one of a plurality of application programs that read and write data to the flash memory store using the log-structured file system.
Claim 11
Dependent Claim
43 words
The method of claim 8 , wherein the plurality of application programs include: an e-mail application and at least one of an organizer application, a calendar application, a to-do list application, an address book application, a billable hours application and a timecard application.
Claim 12
Dependent Claim
56 words
The method of claim 7 , wherein the step of determining whether the current erase block includes available space to write the data record further comprises the step of determining whether the amount of available space is greater than a size of the data record and a minimum space required for cleaning the next erase block.
Claim 13
Dependent Claim
89 words
The method of claim 7 , wherein the log-structured file system includes active records and inactive records, and wherein the- step of cleaning inactive records from a next erase block comprises the steps of copying active records from the next erase block to the current erase block, marking copied active records in the next erase block as inactive, and cleaning the inactive records in the next erase block when all active records in the next erase block have been copied to the current erase block and marked as inactive.
Claim 14
Dependent Claim
49 words
The method of claim 7 , wherein the log-structured file system includes active records and inactive records, further comprising the steps of: determining whether the next erase block includes active records; and cleaning inactive records in the next erase block where the next erase block includes no active records.