DOI QR코드

DOI QR Code

A File System for Large-scale NAND Flash Memory Based Storage System

  • Received : 2017.08.22
  • Accepted : 2017.09.05
  • Published : 2017.09.30

Abstract

In this paper, we propose a file system for flash memory which remedies shortcomings of existing flash memory file systems. Besides supporting large block size, the proposed file system reduces time in initializing file system significantly by adopting logical address comprised of erase block number and bitmap for pages in the block to find a page. The file system is suitable for embedded systems with limited main memory since it has small in-memory data structures. It also provides efficient management of obsolete blocks and free blocks, which contribute to the reduction of file update time. Finally the proposed file system can easily configure the maximum file size and file system size limits, which results in portability to emerging larger flash memories. By conducting performance evaluation studies, we show that the proposed file system can contribute to the performance improvement of embedded systems.

Keywords

References

  1. C. M. Compagnoni, A. Goda, A. S. Spinelli, P. Feeley, A. L. Lacaita, and A. Visconti, "Reviewing the evolution of the NAND Flash technology," Proceedings of IEEE, Vol. 105, Issue 9, pp. 1609-1633, September 2017. https://doi.org/10.1109/JPROC.2017.2665781
  2. S. Kim and J. Kwak, "EPET-WL: Enhanced Prediction and Elapsed Time-based Wear Leveling Technique for NAND Flash Memory in Portable Devices," Journal of the Korea Society of Computer and Information, Vol. 21, No. 5, pp.1-10, May 2016. https://doi.org/10.9708/JKSCI.2016.21.5.001
  3. H. Choi and Y. Kim, "An Efficient Cache Management Scheme of Flash Translation Layer for Large Size Flash Memory Drives," Journal of the Korea Society of Computer and Information, Vol. 20, no.11, pp.31-38, November 2015. https://doi.org/10.9708/jksci.2015.20.11.031
  4. E. Gal and S. Toledo, "Algorithms and Data Structures for Flash Memories," ACM Computing Surveys, Vol. 37, No. 2, pp. 138-163, June 2005. https://doi.org/10.1145/1089733.1089735
  5. D. Woodhouse, JFFS: The Journaling Flash File System, Proceedings of Ottawa Linux Symposium, Ottawa, Canada, July 2001.
  6. Luca Boschetti, Software Profile: Journaling Flash File System, Version 2 (JFFS2), Micron Technology, Inc., March 2011.
  7. How YAFFS works, http://www.dubeiko.com /development/FileSystems/YAFFS/HowYaffsWorks.pdf.
  8. A brief introduction to the design of UBIFS, http://www.linux-mtd.infradead.org/doc/ubifs_whitepaper.pdf.
  9. C. Lee, D. Sim, J. Hwang, and S. Cho, F2FS: A New File System for Flash Storage, Proceedings of the 13th USENIX Conference on File and Storage Technologies (FAST '15), pp. 273-286, Santa Clara CA, USA, February 2015.
  10. K. Yim, J. Kim, and K. Koh, A fast start-up technique for flash memory based computing systems, Proceedings of the 2005 ACM symposium on Applied computing, p.843-849, Santa Fe, New Mexico, USA, March 2005.
  11. C. Wu, T. Kuo, and L. Chang, Efficient initialization and crash recovery for log-based file systems over flash memory, Proceedings of the 2006 ACM symposium on Applied computing SAC '06, p.896-900, Dijon, France, April 2006.
  12. J. Xu and S. Swanson, NOVA: A log-structured file system for hybrid volatile/non-volatile main memories, Proceedings of the 14th USENIX Conference on File and Storage Technologies (FAST '16), pp. 323-338, Santa Clara CA, USA, February 2016.
  13. P. Sehgal, S. Basu, K. Srinivasan, and K. Voruganti, An empirical study of file systems on NVM, Proceedings of the 2015 IEEE Symposium on Mass Storage Systems and Technologies (MSST'15), Santa Clara CA, USA, May 2015.
  14. JFFS3 design issues, http://www.linuxmtd.infradead.org/tech/JFFS3design.pdf.
  15. Tiobench, https://sourceforge.net/projects/tiobench/.