打印

znFAT 10.81 代码 手册 文件系统技术群 145948643

[复制链接]
13539|71
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
znmcu|  楼主 | 2012-7-24 15:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 znmcu 于 2012-7-30 10:00 编辑

关注 加入 QQ群 145948643

znFAT是一种高效、完备、精简且具有高可移植性的嵌入式FAT32文件系统解决方案。其主要特性如下:
1)可通用于多种嵌入式CPU,如51AVRPICARMCortexDSPMSP430
   freescale S12等等。
2)所占用的RAMROM资源极少,并可由使用者视目标平台资源情况进行灵活
   配置,最简配置情况下,RAM的使用量约在800~900字节左右。
3)内建独特的数据写入加速算法以及扇区级的基于“预建文件”的数据写入机
   制。        
4)底层提供简单的单扇区读写驱动接口以及可选的硬件级多扇区连续读写驱动接
   口。(在提供多扇区连续读写驱动的情况下,数据读写速度将有近2~4倍的提升,
   甚至更高。)
5)提供清晰而强大的对函数模块裁剪的功能,极大限度的减小最终生成的可执行文
   件的体积。
6)提供数据读取的重定向功能,使读到的数据无需缓冲暂存,直接流向应用目的。
7)支持长文件名,长文件名最大长度可配置。默认配备并使用GB2312中文字符,
   并可选择是否使用OEM字符集,以减少程序体积。
8)支持与WindowsLinux等操作系统兼容的路径表示,路径分隔可使用/\。支持
   无限深目录,支持长名目录。
9)提供数据写入的实时模式,写入的任何数据,只怕只有一个字节,立即落实到物
   理存储器,防止因恶劣工作环境、干扰或其它原因引起的目标平台不可预见的死   
   机或故障,造成数据丢失(实时模式数据写入速度不高,内存中不缓冲任何数据)。
10)支持对存储设备的格式化,文件系统为FAT32
11)支持*?通配,长名亦支持通配。
12)支持文件与目录的删除,目录支持内含子目录与无限深级子目录结构的删除。
13)支持无限级目录创建。
14)支持多文件同时操作。
15)支持多设备,即同时挂载多种存储设备,可在多种存储设备间任意切换。

znFAT移植与使用手册.pdf

285.28 KB

znFAT 10.81.rar

62.48 KB

振南的znFAT 书稿 序言(2011-4-26).rar

10.4 KB

相关帖子

沙发
coody| | 2012-7-24 17:10 | 只看该作者

使用特权

评论回复
板凳
dong_abc| | 2012-7-25 00:49 | 只看该作者
10.80 版本够高的。执着的人啊~

使用特权

评论回复
地板
znmcu|  楼主 | 2012-7-25 08:34 | 只看该作者
znFAT自 2011年4月开始,全部重新编写,以提高代码质量与方案性能,也许znFAT已经是性能最高的嵌入式FAT文件系统方案了。

使用特权

评论回复
5
mianxi| | 2012-7-25 09:04 | 只看该作者
感谢楼主分享。。。同时强烈鄙视那些看帖不回帖的人!



















-------------------------------------------------------------------------------------------------------------------
汕头月经不调|汕头闭经|汕头痛经|

使用特权

评论回复
6
yan_jian| | 2012-7-25 09:22 | 只看该作者
我在51下用过.真不错

使用特权

评论回复
7
cheungman| | 2012-7-25 09:35 | 只看该作者
znFAT自 2011年4月开始,全部重新编写,以提高代码质量与方案性能,也许znFAT已经是性能最高的嵌入式FAT文件系统方案了。
znmcu 发表于 2012-7-25 08:34


FATFS情何以堪...

使用特权

评论回复
8
znmcu|  楼主 | 2012-7-25 09:58 | 只看该作者
本帖最后由 znmcu 于 2012-7-25 10:17 编辑

要承认FATFS确实非常优秀,算是国际一流的方案了,二流的方案有 EFSL、UCFS,(仅在速度和性能上来讲),三流的方案有国内的ZLGFS、沁恒的FAT方案。FAT文件系统的基本功能并不难,难就难在如何把文件层的文件读写速度和效率提升到一定水平。znFAT现在的性能平均比FATFS高出10%-30%(起决于目标CPU的计算能力和物理层接口效率)。核心算法是 FATFS使用了一种称为 "window" 的缓冲算法,使得数据读写时很大程度上减少了与物理存储设备操作的次数。 要突破它必须要有自己独创的核心算法,znFAT 提出了 一种称为 "CCCB"的压缩缓冲算法,可以用几个字节到几十个字节的内存空间,缓冲文件的所有“数据”。CCCB算法我作了三个月,也已经写到了书里,这个过程确实是艰难的,在5月中旬,加入CCCB算法的znFAT第一次超越FATFS,并少用了近600字节RAM。znFAT仍然是唯一可以在51这种低端CPU上运行的完备的开源嵌入式FAT文件系统方案。当然,znFAT的目的绝非只有51,说实话,近半年,通过组建移植测试小组,已经基本完成了各种主流CPU上的移植工作。
内部研发与书稿评阅工作在进行中。。可以加入 群 145948643  振南的znFAT

使用特权

评论回复
9
znmcu|  楼主 | 2012-7-25 10:05 | 只看该作者
对于一些方面,FATFS仍然作得很好,我还真得想联系 在神奈川的朋友 去打听一个chaN 的所在。

使用特权

评论回复
10
znmcu|  楼主 | 2012-7-25 10:05 | 只看该作者
对于一些方面,FATFS仍然作得很好,我还真得想联系 在神奈川的朋友 去打听一个chaN 的所在。

使用特权

评论回复
11
coody| | 2012-7-25 10:18 | 只看该作者
振南,你读写SD卡的程序现在能支持4G以上的SD卡不?

两年前优化FAT时参考了你的程序,很不错,当时是用STC12LE5608读SD卡给VS1003B播放MP3,跑22.1184MHZ,支持320kbps的码率,因为这个MCU只有512字节的xdata,所以要优化FAT。

使用特权

评论回复
12
znmcu|  楼主 | 2012-7-25 10:27 | 只看该作者
SD卡 4G以上的支持 早就不是问题了。最近一次在DSP2812平台上的移植实验,表明znFAT的文件层数据写入速度已经接近纯物理层的速度。当然,这得利于DSP的较高CPU性能。在一般的CPU上,文件层的速度基本是1/4~1/8 的物理层速度。比如 纯扇区写入的速度是 100KB/s,那么znFAT文件层速度可以达到25KB~15KB,FATFS在1/5~1/11 这个水平。尤其在加入了硬件级的多扇区读写驱动之后,znFAT的表现优于FATFS。
一个软件方案的成功,很多时候并不只在于技术和算法,而在于人心,所以要推广,深入人心,让更多人来用,才行。

使用特权

评论回复
13
coody| | 2012-7-25 10:31 | 只看该作者
支持!

那里可以下到znfat和读写SDHC 4G以上SD卡的程序来参考下? 速度倒不重要,关键是现在都用8G、16G的,以前我的程序只能支持到2G,想升级一下:handshake

使用特权

评论回复
14
znmcu|  楼主 | 2012-7-25 10:41 | 只看该作者
SD_Ready_Go是初始化函数

这是SDHC 高容量SD卡驱动,你可以去测试。

使用特权

评论回复
15
znmcu|  楼主 | 2012-7-25 10:42 | 只看该作者
SD_Ready_Go是初始化函数

这是SDHC 高容量SD卡驱动,你可以去测试。

sdhc.rar

4.08 KB

使用特权

评论回复
16
coody| | 2012-7-25 10:59 | 只看该作者
非常感谢振南的无私,我会测试。。。:handshake

使用特权

评论回复
17
znmcu|  楼主 | 2012-7-25 11:04 | 只看该作者
存储设备的物理层驱动,其实是最简单的。

使用特权

评论回复
18
coody| | 2012-7-25 11:19 | 只看该作者
明白,谢谢!

使用特权

评论回复
19
dongshan| | 2012-7-25 12:17 | 只看该作者
楼主可不要让我失望,急了我会骂人的。

使用特权

评论回复
20
291355171| | 2012-7-25 12:48 | 只看该作者
俺能弱弱的问一句楼主所发为何物吗?

请原谅俺这个无知的菜鸟。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:振南的znFAT -- 单片机上上的FAT32文件系统 www.znmcu.cn

4474

主题

5195

帖子

33

粉丝