High-Performance Scalable Flash File System Using Virtual Metadata Storage with Phase-Change RAM

Several flash file systems have been developed based on the physical characteristics of NAND flash memory. However, previous flash file systems have performance overhead and scalability problems caused by metadata management in NAND flash memory. In this paper, we present a flash file system called PFFS2. PFFS2 stores all metadata into virtual metadata storage, which employs Phase-change RAM (PRAM). PRAM is a next-generation nonvolatile memory and will be good for dealing with word-level read/write of small-size data. Based on the virtual metadata storage, PFFS2 can manage metadata in a virtually fixed location and through byte-level in-place updates. Therefore, the performance of PFFS2 is 38 percent better than YAFFS2 for small file read/write while matching YAFFS2 performance for large file. Virtual metadata storage is particularly effective in decreasing the burden of computational and I/O overhead of garbage collection. In addition, PFFS2 maintains a 0.18 second mounting time and 284 KB memory usage in spite of increases in NAND flash memory size. We also propose a wear-leveling solution for PRAM in virtual metadata storage and greatly reduce the total write count of NAND flash memory. In addition, the life span of PFFS2 is longer than other flash file systems.

[1]  Ferdinando Bedeschi,et al.  A Multi-Level-Cell Bipolar-Selected Phase-Change Memory , 2008, 2008 IEEE International Solid-State Circuits Conference - Digest of Technical Papers.

[2]  Seung-Ho Lim,et al.  PFFS: a scalable flash memory file system for the hybrid architecture of phase-change RAM and NAND flash , 2008, SAC '08.

[3]  José M. García,et al.  The Design of New Journaling File Systems: The DualFS Case , 2007, IEEE Transactions on Computers.

[4]  Chun-Hung Wu,et al.  A New FTL-based Flash Memory Management Scheme with Fast Cleaning Mechanism , 2008, 2008 International Conference on Embedded Software and Systems.

[5]  Onur Mutlu,et al.  Architecting phase change memory as a scalable dram alternative , 2009, ISCA '09.

[6]  S.Y. Lee,et al.  PRAM process technology , 2004, 2004 International Conference on Integrated Circuit Design and Technology (IEEE Cat. No.04EX866).

[7]  Jongmoo Choi,et al.  Exploiting non-volatile RAM to enhance flash file system performance , 2007, EMSOFT '07.

[8]  Hye-Jin Kim,et al.  A 90nm 1.8V 512Mb Diode-Switch PRAM with 266MB/s Read Throughput , 2007, 2007 IEEE International Solid-State Circuits Conference. Digest of Technical Papers.

[9]  A. L. Narasimha Reddy,et al.  An approach to virtual allocation in storage systems , 2006, TOS.

[10]  Youngjoon Choi,et al.  A High Performance Controller for NAND Flash-based Solid State Disk (NSSD) , 2006, 2006 21st IEEE Non-Volatile Semiconductor Memory Workshop.

[11]  David Woodhouse,et al.  JFFS : The Journalling Flash File System , 2001 .

[12]  Shih-Hung Chen,et al.  Phase-change random access memory: A scalable technology , 2008, IBM J. Res. Dev..

[13]  William J. Bolosky,et al.  A large-scale study of file-system contents , 1999, SIGMETRICS '99.

[14]  Geoffrey H. Kuenning,et al.  Conquest: Better Performance Through a Disk/Persistent-RAM Hybrid File System , 2002, USENIX Annual Technical Conference, General Track.

[15]  Byung-Gil Choi,et al.  A 90 nm 1.8 V 512 Mb Diode-Switch PRAM With 266 MB/s Read Throughput , 2008, IEEE Journal of Solid-State Circuits.

[16]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[17]  Scott A. Brandt,et al.  HeRMES: high-performance reliable MRAM-enabled storage , 2001, Proceedings Eighth Workshop on Hot Topics in Operating Systems.

[18]  Sang-goo Lee,et al.  A new flash memory management for flash storage system , 1999, Proceedings. Twenty-Third Annual International Computer Software and Applications Conference (Cat. No.99CB37032).

[19]  Mary Baker,et al.  Non-volatile memory for fast, reliable file systems , 1992, ASPLOS V.

[20]  W. Vogels File system usage in Windows NT 4.0 , 2000, OPSR.

[21]  Hyung Gyu Lee,et al.  A PRAM and NAND flash hybrid architecture for high-performance embedded storage subsystems , 2008, EMSOFT '08.

[22]  Vijayalakshmi Srinivasan,et al.  Enhancing lifetime and security of PCM-based Main Memory with Start-Gap Wear Leveling , 2009, 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[23]  Jacob R. Lorch,et al.  A five-year study of file-system metadata , 2007, TOS.

[24]  Hiroshi Motoda,et al.  A Flash-Memory Based File System , 1995, USENIX.

[25]  Michael Wu,et al.  eNVy: a non-volatile, main memory storage system , 1994, ASPLOS VI.

[26]  Chang-gyu Hwang,et al.  Nanotechnology enables a new memory growth model , 2003 .

[27]  Kyu Ho Park,et al.  An efficient NAND flash file system for flash memory storage , 2006, IEEE Transactions on Computers.

[28]  Thomas E. Anderson,et al.  A Comparison of File System Workloads , 2000, USENIX Annual Technical Conference, General Track.

[29]  Sang Lyul Min,et al.  LRFU: A Spectrum of Policies that Subsumes the Least Recently Used and Least Frequently Used Policies , 2001, IEEE Trans. Computers.

[30]  Tei-Wei Kuo,et al.  Real-time garbage collection for flash-memory storage systems of real-time embedded systems , 2004, TECS.

[31]  Sung Hoon Baek,et al.  A Hybrid Flash File System Based on NOR and NAND Flash Memories for Embedded Devices , 2008, IEEE Transactions on Computers.

[32]  Jeffrey Katcher,et al.  PostMark: A New File System Benchmark , 1997 .

[33]  Kai Li,et al.  Storage alternatives for mobile computers , 1994, OSDI '94.

[34]  Yale N. Patt,et al.  Metadata update performance in file systems , 1994, OSDI '94.