System Software for Flash Memory: A Survey

  • Tae-Sun Chung
  • Dong-Joo Park
  • Sangwon Park
  • Dong-Ho Lee
  • Sang-Won Lee
  • Ha-Joo Song
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4096)


Recently, flash memory is widely adopted in embedded applications since it has several strong points: non-volatility, fast access speed, shock resistance, and low power consumption. However, due to its hardware characteristic, namely “erase before write”, it requires a software layer called FTL (Flash Translation Layer). This paper surveys the state-of-the-art FTL software for flash memory. This paper also describes problem definitions, several algorithms proposed to solve them, and related research issues. In addition, this paper provides performance results based on our implementation of each of FTL algorithms.


Flash memory Embedded System File System 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ban, A.: Flash file system, United States Patent, no. 5,404,485 (1995)Google Scholar
  2. 2.
    Ban, A.: Flash file system optimized for page-mode flash technologies, United States Patent, no. 5,937,425 (1999)Google Scholar
  3. 3.
    Microsoft Corporation. Fat32 file system specification. Technical report, Microsoft Corporation (2000)Google Scholar
  4. 4.
    Samsung Electronics. Nand flash memory & smartmedia data book (2004)Google Scholar
  5. 5.
    Estakhri, P., Iman, B.: Moving sequential sectors within a block of information in a flash memory mass storage architecture, United States Patent, no. 5,930,815 (1999)Google Scholar
  6. 6.
    Gal, E., Toledo, S.: Algorithms and data structures for flash memories. ACM Computing Surveys 37(2) (2005)Google Scholar
  7. 7.
    Kawaguchi, A., Nishioka, S., Motoda, H.: Flash Memory based File System. In: USENIX 1995 Winter Technical Conference (1995)Google Scholar
  8. 8.
    Kim, J., Kim, J.M., Noh, S.H., Min, S.L., Cho, Y.: A space-efficient flash translation layer for compactflash systems. IEEE Transactions on Consumer Electronics 48(2) (2002)Google Scholar
  9. 9.
    Resenblum, M., Ousterhout, J.: The Design and Implementation of a Log-structured File System. ACM Transactions on Computer Systems 10(1) (1992)Google Scholar
  10. 10.
    Shinohara, T.: Flash memory card with block memory address arrangement, United States Patent, no. 5,905,993 (1999)Google Scholar
  11. 11.
    Kim, B.s., Lee, G.y.: Method of driving remapping in flash memory and flash memory architecture suitable therefore, United States Patent, no. 6,381,176 (2002)Google Scholar
  12. 12.
    Symbian (2003),
  13. 13.
    Wu, M., Zwaenepoel, W.: eNVy: A Non-Volatile, Main Memory Storage System. In: International Conference on Architectural Support for Programming Languages and Operating Systems (1994)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Tae-Sun Chung
    • 1
  • Dong-Joo Park
    • 2
  • Sangwon Park
    • 3
  • Dong-Ho Lee
    • 4
  • Sang-Won Lee
    • 5
  • Ha-Joo Song
    • 6
  1. 1.College of Information TechnologyAjou UniversityKorea
  2. 2.School of Computing, College of Information ScienceSoongsil UniversityKorea
  3. 3.Computer Science & Information Communication Engineering DivisionHankuk University of Foreign StudiesKorea
  4. 4.Department of Computer Science and EngineeringHanyang UniversityKorea
  5. 5.School of Information and Communications EngineeringSungkyunkwan UniversityKorea
  6. 6.Division of Electronic, Computer and TelecommunicationPukyong National UniversityKorea

Personalised recommendations