ljt80158015 发表于 2015-9-26 07:31:27

专为spi flash设计的文件系统:spiffs

专为spi flash设计的文件系统:https://github.com/pellepl/spiffs

zhcj66 发表于 2015-9-26 08:00:43

这个GIT怎么使用?

10xjzheng 发表于 2015-9-26 08:53:11

good!   

sunjianmax232 发表于 2015-9-26 09:25:38

关注很久了,还自带Wear leveling,但还没用上。坛里有位网友已经移植到stm32上来了,地址在这

xiaoxu191 发表于 2015-9-26 09:38:32

(译自英文)

1、简介

SPIFFS是一个文件系统,用于嵌入式产品中的SPI NOR flash器件。

SPIFFS的设计意图具有以下特点:

•小的(嵌入式)产品,少的内存,没有堆(heap)

•只有大数据(块)可以擦除

•擦除将重置块中的所有位

•写入是将位从1写为0

•从0写为1只能靠块擦除实现

•磨损平衡


2、特点

SPIFFS能做什么:

•专为低内存使用

•使用静态分配大小的内存缓冲区,独立的文件数量

•类POSIX的API,如:关闭,读,写,寻道,状态等

•它可以运行在任何NOR闪存,不仅仅是SPI Flash,理论上也对任何MCU的嵌入式Flash可行

•同一产品中可以运行多种SPIFFS的配置,即使只有一个SPI Flash器件

•实现静态磨损均衡

•内置文件系统一致性检查


SPIFFS不能做什么:

•目前来说,不支持目录。它会产生一个扁平结构。要创建一个带路径的文件“tmp/myfile.txt”,将创建一个文件“tmp/myfile.txt

”,而不是目录“tmp”下的“myfiletxt”。

•它不是一个实时堆栈。一个写操作可能需要比其它文件系统更长的时间。

•规模小。SPIFFS是为小存储设备设计的,通常为SPI Flash这类器件的大小。小于~128MB也许是个坏主意。尽可能使用小内存是设计目

标的一个副作用。

•目前,它没有检测或处理坏块。

wsm80828 发表于 2015-9-27 07:34:57

谢谢分享

eliterxzgxu 发表于 2016-9-1 17:22:47

感谢楼主分享

bushiniu 发表于 2016-9-2 07:15:10

试试看好用不

yiminglei_2 发表于 2016-10-3 14:37:32

本帖最后由 yiminglei_2 于 2016-10-3 20:26 编辑

请问一下,哪个函数是截断文件的呢?其它系统一般是ftruncate()这个接口。

还有,如何新建一个特定大小的文件?

谢谢!

HalenYU 发表于 2016-10-24 20:34:39

这个东西非常好,不知访问效率这么样
页: [1]
查看完整版本: 专为spi flash设计的文件系统:spiffs