Flash memory, which has advantages of nonvolatility, high density, little power consumption, and low cost, has been employed as memory device for small and portable embedded devices. Flash memory, however, is slower in writing data compared with volatile semiconductor memory such as DRAM, and requires a time-consuming block erase operation for data rewriting. The block erase operation should be avoided as far as possible because there is a limit in the number of erases. In this paper, a file system for flash memory that realizes high-speed data access and high durability is proposed, and designed and implemented. Specifically speaking, the life of flash memory is prolonged by using linked lists for file management to avoid concentration of rewriting on specific erase blocks. Furthermore, write operations are speeded-up by writing only the difference in update, and the number of block erase operations is reduced by updating links through appending operations. The result of experiments showed that concentration of block erase operations on specific blocks, which is normal in conventional table management methods, could be avoided by using linked lists for file management. Appending operations produced little degradation of storage usage even if the file size was fairly smaller compared with the size of an erase block. However, there were cases where multiple garbage collections were required in file writing, and it took several times longer than usual cases. Thus, it is necessary to improve file writing for practical application.
All Science Journal Classification (ASJC) codes
- Theoretical Computer Science
- Information Systems
- Hardware and Architecture
- Computational Theory and Mathematics