简介

RT-Thread 的文件系统采用了三层的结构,如图 文件系统结构图 所示:

文件系统结构图

最顶层的是一套面向嵌入式系统,专门优化过的虚拟文件系统(接口)。通过它,RT-thread 操作系统能够适配下层不同的文件系统格式,例如个人电脑上常使用的FAT 文件系统,或者是嵌入式设备中常见的flash 文件系统(YAFFS2、JFFS2 等)。

接下来中间的一层是各种文件系统的实现,例如支持FAT文件系统的DFS-ELM、支持NandFlash 的YAFFS2,只读文件系统ROMFS 等。(RT-Thread 1.0.0版本中包含了ELM FatFS,ROMFS以及网络文件系统NFS v3实现,YAFFS2等flash 文件系统则包含在了RT-Thread 1.1.0 版本中)

最底层的是各类存储驱动,例如SD 卡驱动,IDE 硬盘驱动等。RT-Thread 1.1.0 版本也将在NandFlash 上构建一层转换层(FTL),以使得NandFlash能够支持Flash 文件系统。

RT-Thread 的文件系统对上层提供的接口主要以POSIX 标准接口为主,这样也能够保证程序可以在PC 上编写、调试,然后再移植到RT-Thread 操作系统上。