An Efficient Buffer Page Replacement Strategy for System Software on Flash Memory

플래시 메모리상에서 시스템 소프트웨어의 효율적인 버퍼 페이지 교체 기법

  • Published : 2007.04.15

Abstract

Flash memory has penetrated our life in various forms. For example, flash memory is important storage component of ubiquitous computing or mobile products such as cell phone, MP3 player, PDA, and portable storage kits. Behind of the wide acceptance as memory is many advantages of flash memory: for instances, low power consumption, nonvolatile, stability and portability. In addition to mentioned strengths, the recent development of gigabyte range capacity flash memory makes a careful prediction that the flash memory might replace some of storage area dominated by hard disks. In order to have overwriting function, one block must be erased before overwriting is performed. This difference results in the cost of reading, writing and erasing in flash memory[1][5][6]. Since this difference has not been considered in traditional buffer replacement technologies adopted in system software such as OS and DBMS, a new buffer replacement strategy becomes necessary. In this paper, a new buffer replacement strategy, reflecting difference I/O cost and applicable to flash memory, suggest and compares with other buffer replacement strategies using workloads as Zipfian distribution and real data.

플래시 메모리는 오늘날 다양한 형태로 우리 생활의 일부를 차지하고 있다. 이동식 저장매체, 유비쿼터스 컴퓨팅 환경과 휴대전화기, MP3플레이어, 개인정보단말기(PDA) 등의 모바일 제품 등에 광범위하게 사용되고 있다. 이처럼 많은 분야에서 사용되는 주된 이유는 플래시 메모리가 저전력, 비휘발성, 고성능, 물리적 안정성, 휴대성 등의 장점을 갖기 때문이다. 더불어 최근에는 기가바이트급 플래시 메모리도 개발되어 하드디스크의 자리를 대체할 수 있는 상황에 이르렀다. 하지만, 플래시 메모리는 하드디스크와 달리 이미 데이타가 기록된 섹터에 대해 덮어쓰기가 되지 않는다는 특성을 갖고 있다. 데이타를 덮어쓰기 위해서는 해당 섹터가 포함된 블록을 지우고(소거) 쓰기 작업을 수행해야 한다. 이로 인해 플래시 메모리의 데이타 읽기/쓰기/소거에 비용이 하드 디스크와 같이 동일한 것이 아니라 각각 다르다[1][5][6]. 이러한 특성이 고려되지 않은 기존의 OS, DBMS 등과 같은 시스템 소프트웨어에서 사용되는 교체 기법은 플래시 메모리 상에서 비효율성을 가질 수 있다. 그러므로 플래시 메모리상에서는 플래시 메모리의 특성을 고려한 효율적인 버퍼 교체 기법이 필요하다. 본 논문에서는 플래시 메모리의 특성을 고려한 버퍼 페이지 교체기법을 제안하며, 제안된 기법과 기존 기법들과의 성능 평가를 수행한다. 지프분포와 실제 워크로드를 사용한 성능평가는 플래시 메모리의 특성을 고려한 버퍼 페이지 교체 기법의 필요성을 입증한다.

Keywords

References

  1. Tae-Sun Chung, Dong-Joo Park, Yeonseung Ryu, Sugwon Hong, 'LSTAFF: System Software for Large Block Flash Memory,' Asia Simulation Conference, pp. 704-712. 2004
  2. A. Silberschatz, P. B. Galvin, and G. Gagne, 'Operating System Concepts sixth edition,' Wiley, 2003
  3. E. J. O'Neil, P. E. O'Neil, and G. Weikum, 'The LRU-K Page Replacement Algorithm For Database Disk Buffering,' ACM Special Interest Group on Management Of Data 1993 Annual Conference, pp. 297-306, 1993 https://doi.org/10.1145/170036.170081
  4. S. Podlipnig, L. Boszormenyi. 'A Survey of Web cache replacement strategies,' ACM Comput. Surv., Vol. 35 No.4, pp. 374-398, 2003 https://doi.org/10.1145/954339.954341
  5. J.Kim, J.M. Kim, S.H. Noh, S.L. Min, and Y. Cho, 'A Space-Efficient Flash Translation Layer for Compact Flash Systems,' IEEE Transactions on Consumer Electronics, Vol. 48 No.2, pp. 366-375, 2002 https://doi.org/10.1109/TCE.2002.1010143
  6. Chin-Hsien Wu, Li-Pin Chang, and Tei-Wei Kuo, 'An Efficient B-Tree Layer for Flash-Memory Storage Systems,' Real-Time Computing Systems and Applications, pp. 409-430, 2003
  7. Takayuki Shinohara, 'Flash Memory Card with Bock Memory Address Arrangement,' U.S. Patent, Patent Number 5,905,993, May 18, 1999
  8. Jong Min Kim, Jongmoo Choi, Jesung Kim, Sam H. Noh, Sang Lyul Min, Yookun Cho, Chong Sang Kim, 'A Low-Overhead High-Performance Unified Buffer Management Scheme that Exploits Sequential and Looping References,' Operating Systems Design and Implementation, pp. 119-134, 2000