Flash memory is widely used as the secondary storage in lightweight computing
devices due to its outstanding advantages over magnetic disks. Flash memory has
many access characteristics different from those of magnetic disks, and how to
take advantage of them is becoming an important research issue. There are two
existing approaches to storing data into flash memory: page-based and
log-based. The former has good performance for read operations, but poor
performance for write operations.