On Improving the Reliability and Performance of the YAFFS Flash File System

Seungjae BAEK
Heekwon PARK
Jongmoo CHOI

IEICE TRANSACTIONS on Information and Systems   Vol.E94-D    No.12    pp.2528-2532
Publication Date: 2011/12/01
Online ISSN: 1745-1361
DOI: 10.1587/transinf.E94.D.2528
Print ISSN: 0916-8532
Type of Manuscript: LETTER
Category: Software System
flash memory,  file system,  mount speed,  performance evaluation,  garbage collection,  

Full Text: PDF>>
Buy this Article

In this paper, we propose three techniques to improve the performance of YAFFS (Yet Another Flash File System), while enhancing the reliability of the system. Specifically, we first propose to manage metadata and user data separately on segregated blocks. This modification not only leads to the reduction of the mount time but also reduces the garbage collection time. Second, we tailor the wear-leveling to the segregated metadata and user data blocks. That is, worn out blocks between the segregated blocks are swapped, which leads to more evenly worn out blocks increasing the lifetime of the system. Finally, we devise an analytic model to predict the expected garbage collection time. By accurately predicting the garbage collection time, the system can perform garbage collection at more opportune times when the user's perceived performance may not be negatively affected. Performance evaluation results based on real implementations show that our modifications enhance performance and reliability without incurring additional overheads. Specifically, the YAFFS with our proposed techniques outperforms the original YAFFS by six times in terms of mount speed and five times in terms of benchmark performance, while reducing the average erase count of blocks by 14%.