Implementation of Efficient and Reliable Flash File System

효율적이고 신뢰성 있는 플래시 파일시스템의 구현

  • 진종원 (삼성전자 정보통신총괄 통신연구소 A/V코덱랩) ;
  • 이태훈 (부산대학교 컴퓨터공학과) ;
  • 이승환 (부산대학교 컴퓨터공학과) ;
  • 정기동 (부산대학교 컴퓨터공학과)
  • Received : 2007.12.27
  • Accepted : 2008.04.23
  • Published : 2008.05.31

Abstract

Flash memory is widely used in embedded systems because of its benefits such as non-volatile, shock resistant, and low power consumption. However, NAND flash memory suffers from out-place-update, limited erase cycles, and page based read/write operations. To solve these problems, YAFFS and RFFS, the flash memory file systems, are proposed. However YAFFS takes long time to mount the file system, because all the files are scattered all around flash memory. Thus YAFFS needs to fully scan the flash memory. To provide fast mounting, RFFS has been proposed. It stores all the block information, the addresses of block information and meta data to use them at mounting time. However additional operations for the meta data management are decreasing the performance of the system. This paper presents a new NAND flash file system called ERFFS (Efficient and Reliable Flash File System) which provides fast mounting and recovery with minimum mata data management. Based on the experimental results, ERFFS reduces the flash mount/recovery time and the file system overhead.

플래시 메모리는 비휘발성, 저전력, 빠른 입출력, 충격에 강함 등과 같은 많은 장점으로 임베디드 시스템에 많이 사용되고 있다. 그렇지만 제자리 덮어쓰기가 불가능하고 블록의 지움 횟수 제약이 있으며, 지움 연산을 페이지 단위로 해야 한다는 단점이 있다. 이러한 제약을 극복하기 위해 YAFFS와 RFFS와 같은 NAND플래시 파일 시스템이 제안되었다. YAFFS는 마운트 과정에서 필요한 데이터들을 얻기 위해 전체 플래시 메모리를 읽어야 하기에 마운트 시간이 느려진다. 따라서 빠른 마운트를 위해 필요한 모든 블록의 정보와 메타 데이터를 관리하는 RFFS 파일시스템이 제안되었다. 하지만 메타 데이터를 관리하기 위한 연산으로 인하여 파일시스템에 부담을 증가 시킨다. 본 논문에서는 위와 같은 문제점 해결을 위하여 최소한의 메타데이터를 이용하여 빠른 부팅 및 복구를 제공 할 수 있는 NAND 플래시 파일 시스템을 제안한다. 그리고 실험을 통해 마운트 및 복구 성능 향상과 시스템에 부하가 없음을 보인다.

Keywords