Abstract
A very promising approach for using NAND flash memory as a storage medium is a flash file system. In order to design a higher-performance flash file system, two issues should be considered carefully. One issue is the design of an efficient index structure that contains the locations of both files and data in the flash memory. For large-capacity storage, the index structure must be stored in the flash memory to realize low memory consumption; however, this may degrade the system performance. The other issue is the design of a novel garbage collection (GC) scheme that reclaims obsolete pages. This scheme can induce considerable additional read and write operations while identifying and migrating valid pages. In this article, we present a novel flash file system that has the following features: (i) a lightweight index structure that introduces the hybrid indexing scheme and intra-inode index logging, and (ii) an efficient GC scheme that adopts a dirty list with an on-demand GC approach as well as fine-grained data separation and erase-unit data allocation. We implemented FlashLight in a Linux OS with kernel version 2.6.21 on an embedded device. The experimental results obtained using several benchmark programs confirm that FlashLight improves the performance by up to 27.4% over UBIFS by alleviating index management and GC overheads by up to 33.8%.
- Agrawal, N., Bolosky, W. J., Douceur, J. R., and Lorch, J. R. 2007. A five-year study of file-system metadata. ACM Trans. Storage 3, 3. Google Scholar
Digital Library
- Aleph One Ltd. 2003. Yet another flash file system v2 (yaffs2). http://www.yaffs.net.Google Scholar
- Bityutskiy, A. 2005. JFFS3 design issues. http://www.linux-mtd.infradead.org/.Google Scholar
- Chang, L.-P., Kuo, T.-W., and Lo, S.-W. 2004. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. ACM Trans. Embed. Comput. Syst. 3, 4, 837--863. Google Scholar
Digital Library
- Choi, H.-J., Lim, S. H., and Park, K. H. 2009. Jftl: A flash translation layer based on a journal remapping for flash memory. ACM Trans. Storage 4, 4. Google Scholar
Digital Library
- Douglis, F., Cáceres, R., Kaashoek, M., Li, K., Marsh, B., and Tauber, J. 1994. Storage alternatives for mobile computers. In Proceedings of the Symposium on Operating Systems Design and Implementation (OSDI’94). 25--37. Google Scholar
Digital Library
- Evans, K. M. and Kuenning, G. H. 2002. A study of irregularities in file-size distributions. In Proceedings of the International Symposium on Performance Evaluation of Computer and Telecommunication Systems (SPECTS’02).Google Scholar
- FIPS 180-1. 1995. Secure hash standard. U.S. Department of Commerce/N.I.S.T.Google Scholar
- Gal, E. and Toledo, S. 2005. A transactional flash file system for microcontrollers. In Proceedings of the USENIX Annual Technical Conference. 89--104. Google Scholar
Digital Library
- Hunter, A. 2008. A brief introduction to the design of ubifs. http://www.linux-mtd.infradead.org.Google Scholar
- Katcher, J. 1997. Postmark: A new file system benchmark. In the TR3022 of Network Appliance.Google Scholar
- Kim, J., Kim, J., Noh, S., Min, S., and Cho, Y. 2002. A space efficient flash translation layer for compactflash systems. IEEE Trans. Consumer Electron. 48, 2, 366--375. Google Scholar
Digital Library
- Kopytov, A. 2004. SysBench: A system performance benchmark. http://sysbench.sourceforge.net/index.html.Google Scholar
- Lim, S. H. and Park, K. H. 2006. An efficient nand flash file system for flash memory storage. IEEE Trans. Comput. 55, 7, 906--912. Google Scholar
Digital Library
- Linux Distributor. 2002. CRAMFS (Compressed ROM file system). http://lxr.linux.no/source/fs/cramfs/README.Google Scholar
- Litwin, W. 1980. Linear hashing: A new tool for file and table addressing. In Proceedings of 6th International Conference on Very Large Data Bases (VLDB’80). 212--223. Google Scholar
Digital Library
- McDougall, R., Crase, J., and Debnath, S. 2006. FileBench: File system microbenchmarks. http://www.opensolaris.org.Google Scholar
- Nokia. 2008. N810 Internet tablet. http://www.nokiausa.com/A4626058.Google Scholar
- Rosenblum, M. and Ousterhout, J. K. 1992. The design and implementation of a log-structured file system. ACM Trans. Computer Systems 10, 1, 26--52. Google Scholar
Digital Library
- Samsung Electronics. www.samsung.com/global/business/semiconductor/.Google Scholar
- Sivathanu, M., Bairavasundaram, L. N., Arpaci-Dusseau, A. C., and Arpaci-Dusseau, R. H. 2004. Life or death at block-level. In Proceedings of the 6th Symposium on Operating Systems Design and Implementation (OSDI’04). 379--394. Google Scholar
Digital Library
- Woodhouse, D. 2001. Jffs: The journalling flash file system. In Proceedings of the Ottawa Linux Symposium.Google Scholar
Index Terms
FlashLight: A Lightweight Flash File System for Embedded Systems
Recommendations
An Efficient NAND Flash File System for Flash Memory Storage
In this paper, we present an efficient flash file system for flash memory storage. Flash memory, especially NAND flash memory, has become a major method for data storage. Currently, a block level translation interface is required between an existing ...
A high performance NAND array file system based on multiple NAND flash memories
The existing NAND flash memory file systems have not taken into account multiple NAND flash memories for large-capacity storage. In addition, since large-capacity NAND flash memory is much more expensive than the same capacity hard disk drive, it is ...
Locality and Duplication-Aware Garbage Collection for Flash Memory-Based Virtual Memory Systems
CIT '10: Proceedings of the 2010 10th IEEE International Conference on Computer and Information TechnologyAs embedded systems adopt monolithic kernels, NAND flash memory is used for swap space of virtual memory systems. While flash memory has the advantages of low-power consumption, shock-resistance and non-volatility, it requires garbage collections due to ...






Comments