闪存文件系统(
英语:Flash file system),是一种为了在
闪存设备上存储数据而设计的
文件系统,如
JFFS2与
YAFFS等。随着移动设备的日渐增加,闪存的存储能力增加以及价格下降,这类型的文件系统变得越来越普遍。
设计闪存文件系统的基本概念是,当存储数据需要更新时,文件系统将会把新的复本写入一个新的闪存区块,将文件指针重新指向,并在闲置时期将原有的区块抺除。例如
JFFS2与
YAFFS,都是这样设计。
最早的闪存文件系统之一,是微软所研发的FFS2(Flash File System 2),在1990年代,它被应用在
MS-DOS上。
在1994年间,
PCMCIA组织,通过了闪存转换层(Flash Translation Layer,FTL)的规格,允许Linear Flash设备能够看起来像是
FAT磁盘设备,但是仍然保有
耗损平均技术的能力。应用相同概念,但为了避免专利争议,数据光公司(Datalight)创造了FlashFX与FlashFX Pro,作为商业产品。
在
Linux上实现的闪存转换层,称为
MTD。MTD是一个硬件的抽象层,能够让闪存设备看起来像是一种区块设备,因此能够将既有的文件系统,如
FAT、
Ext、
XFS等,直接应用在闪存上。