Abstract

메인메모리와 저장장치사이의 속도차이에 대한 소프트웨어적 보완 기법으로서 캐싱 및 선반입 정책이 대부분의 시스템에서 사용되고 있다. 본 논문에서는 프로그램의 페이지 참조 패턴을 고려하지 않은 리눅스 커널의 캐싱 및 선반입 정책을 개선하고자 NAND 플래시 메모리용 파일시스템 계층에서 동작하는 Flash Cache Core Module(FCCM)을 YAFFS 상에서 설계 및 구현하였다. FCCM은 커널의 안정성과 호환성을 지원하기위해 커널과 독립적인 구조를 가지며, 플래시 메모리의 특성을 고려한 Dirty-Last 메모리 교체 기법과 페이지의 히트 여부에 따른 선반입 페이지 대기큐를 구현하였다. FCCM은 리눅스의 캐시 및 선반입 정책과 비교해 I/O 횟수와 요구되는 선반입양이 각각 최대 55%(평균 20%) 및 최대 55%(평균 24%)까지 감소했다. Caching and prefetching policies have been used in most of computer systems to compensate speed differences between primary memory and secondary storage devices. In this paper, we design and implement a Flash Cache Core Module(FCCM) on the YAFFS which operates on a file system layer for NAND flash memory. The FCCM is independent of the underlying kernel in order to support its stability and compatibility. Also, we implement the Dirty-Last memory replacement technique considering the characteristics of flash memory, and the waiting queue for pages to be prefetched according to page hit. The FCCM reduced the number of I/Os and the amount of prefetched pages by maximum 55%(20% on average) and maximum 55%(24% on average), respectively, comparing with caching and prefetching policies of Linux.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call