嵌入式系统与单片机|技术阅读
登录|注册

您现在的位置是:嵌入式系统与单片机 > 技术阅读 > 适合单片机系统的开源文件系统

适合单片机系统的开源文件系统

    在设计和开发单片机软件时,相较传统方式——直接在flash中分配固定的区域来存储数据文件,使用文件系统无疑具有先进性和便利性。

   然而,尽管MCU进入了32位arm时代,能力也越来越强,但是适合于PC机与MPU的大型文件系统,例如ext2/3/4等,对于单片机而言,还是太“笨重”了。本期公众号就推荐几款适合MCU的小型开源文件系统供大家参考和学习。

FatFs(Generic FAT Filesystem Module) - 经久不衰老戏骨

     FatFs 是专为小型嵌入式系统开发的一种通用FAT 文件系统。它完全是由 AISI C 语言编写,并且完全独立于底层的 I/O 介质。能够比较容易地移植到其他的处理器,甚至是移植到某些flash比较大的8位单片机系统中。目前,FatFs 支持 FAT12、 FAT16、FAT32 等格式。

总的来说它的特点如下:

- 支持ANSI和unicode编码的长文件名
- 支持双字节(DBCS)编码
- 支持exFAT文件系统
- 线程安全,适合集成到RTOS
- 支持不同大小的存储分区
- 支持多个分区

值得一提的是,FatFs还有一个超轻量级版本Petit FatFs,最少只需要几十个字节的RAM以及2K的flash。

有兴趣的读者可以访问:http://elm-chan.org/fsw/ff/00index_e.html


RanFS: 轻量级嵌入式文件系统 - 文件系统隐士

RanFS也是完全基于 C (C89) 编写的,它主要特点如下:

- 支持 FAT12/16/32 可读写文件系统
- 支持 NTFS EXT2/3/4 只读文件系统
- 提供 POSIX 兼容的文件操作 API

说它是“文件系统中的隐士”,是因为不知道它来自于何方,何人所作。看介绍又似曾相识。

有兴趣的读者可以访问:http://www.ranfs.com/cn/


znFAT- 国人的嵌入式文件系统