CDFS-V1.00
所属分类:嵌入式/单片机/硬件编程
开发工具:Visual C++
文件大小:195KB
下载次数:28
上传日期:2009-05-19 20:18:14
上 传 者:
logwen
说明: CDFS全名为China-Dragon File System,即中国龙文件系统。这是我开发的一款FAT16/FAT32的文件系统,支持多个磁盘。
CDFS的开源主要是为学习FAT文件系统者提供一个学习和开发的平台。因此功能
简洁、紧凑,注释也非常多,源码结构尽量方便大家容易看懂。
(CDFS called China-Dragon File System, File System that is the Chinese dragon. This is my FAT16/FAT32 developed a file system, support for multiple disk. CDFS is the open source FAT file system for the study and provide a platform for learning and development. So simple and functional, compact, comments are very much the structure of source code to facilitate easy to understand as much as possible.)
文件列表:
CDFS-V1.00\CDFS\cdfs.h (762, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_config.h (3871, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_dir.c (32749, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_dir.h (8954, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_disk.c (10044, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_disk.h (9277, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_fat.c (8971, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_fat.h (1500, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_fs.c (12994, 2009-04-24)
CDFS-V1.00\CDFS\cdfs_type.h (841, 2009-04-24)
CDFS-V1.00\CDFS运行图片\PC机上运行的图片\PHOTO1.JPG (39601, 2009-04-24)
CDFS-V1.00\CDFS运行图片\PC机上运行的图片\PHOTO2.JPG (20458, 2009-04-24)
CDFS-V1.00\CDFS运行图片\PC机上运行的图片\PHOTO3.JPG (79769, 2009-04-24)
CDFS-V1.00\CDFS运行图片\在JZ4740平台的UCOSII上运行的图片\1.JPG (50221, 2009-04-24)
CDFS-V1.00\CDFS运行图片\在JZ4740平台的UCOSII上运行的图片\2.JPG (31036, 2009-04-24)
CDFS-V1.00\CLIB\clibmisc.c (9063, 2009-04-24)
CDFS-V1.00\CLIB\fs_clib.h (1780, 2009-04-24)
CDFS-V1.00\Device\PC\hostemu.c (2482, 2009-04-24)
CDFS-V1.00\Device\PC\hostemu.h (1737, 2009-04-24)
CDFS-V1.00\Device\PC\type.h (803, 2009-04-24)
CDFS-V1.00\main.c (7324, 2009-04-24)
CDFS-V1.00\CDFS运行图片\PC机上运行的图片 (0, 2009-04-24)
CDFS-V1.00\CDFS运行图片\在JZ4740平台的UCOSII上运行的图片 (0, 2009-04-24)
CDFS-V1.00\Device\PC (0, 2009-04-24)
CDFS-V1.00\CDFS (0, 2009-04-24)
CDFS-V1.00\CDFS运行图片 (0, 2009-04-24)
CDFS-V1.00\CLIB (0, 2009-04-24)
CDFS-V1.00\Device (0, 2009-04-24)
CDFS-V1.00 (0, 2009-04-24)
/********************************************************************
* CDFS Embedded FAT-Compatible Filesystem
* CDFS 全名为 ***-Dragon File System
*
* 编写者:龙行 (longeses1013@126.com)
* 版本号:CDFS-1.00
* 发布日期:2009-5-1
********************************************************************/
/********************************************************************
版本修订记录:
1、原始版本:CDFS-1.00
*********************************************************************/
开源说明:
关于FAT,做一些中端的嵌入式系统是经常用到的.为此我也花了很多精力去学
习它.从网上找了很多资料,将FAT文件系统开源的基本是老外写的.很感谢他们的
开源精神,至少为我们提供了例程.
为了方便大家有个好的例程进行学习,也为了将已学习到的FAT知识作个应用
总结,于是重新架构和编写了一个FAT文件系统,目前只支持FAT16和FAT32.它具有
以下一些优点:
1、支持多个磁盘。磁盘的个数会直接影响到RAM的占用量,如果RAM容量许可
的话,你可以让它支持几十个磁盘。这是CDFS架构的优点之一。
2、对FAT表设有缓冲处理。大大提升了FS读写文件操作的速度,同时也减小了
对磁盘的访问次数。
3、对路径的操作处理比较灵活。在CDFS,路径也当作文件来处理,因此操作
路径时就像操作一个文件,从文件结构体中可看出,它预留的可升级空间很大。
很空易让调用者知道当前的路径名及文件信息。而且路径也可以直接转化成文件操
作。
4、在没有打开文件时,不占用内存。每个文件占用的最小内存小于2K,为保
使它的工作效率增加,最好提供2K的内存。
5、整个FS中,没有使用malloc()函数,使用者可以采用malloc()函数申请文件
所需的内存,在关闭文件时释放掉内存空间。由于FS内部没有使用malloc函数,不
用担心内存碎片的问题。这点在RAM比较小的嵌入式系统中比较重要。
6、CDFS经过许多次测试,稳定性、可靠性比较高。我曾将它移值到以JZ4740为
平台的UCOSII中,读写SD卡的文件系统相当不错。也在实际运行过程中发现和修正
了许多错误。
这个例程是基于VC6.0编写的,使用C语言。你可以在PC机上弄个磁盘映像
文件-----disk.img,就可以PC机直接测试这个CDFS了。如果需要移植到嵌入式系
统中,只需修改Device/PC文件夹下hostemu.c文件中的CDFS_HostReadSector和
CDFS_HostWriteSector函数即可。
开源声明:
CDFS全名为***-Dragon File System,即中国龙文件系统。龙在中国是中华民
族的灵魂,但在西方的Dragon却是含有暴力的恐怖的意思,为此我写成***-Dragon
以示区别。我们必须将中国龙与西方认识的龙加以区别,反对因为Dragon的含义而改
变中华***的龙图腾。
CDFS的开源主要是为学习FAT文件系统者提供一个学习和开发的平台。因此功能
简洁、紧凑,注释也非常多,源码结构尽量方便大家容易看懂。
如果你在使用过程中发现BUG或有新的建议,欢迎与我联系。我们共同完善它。
你可以将CDFS完善并用于你的项目中或***传播,它是开源的,且完全免费的。
你可以完善它或升级源码并加以传播,但请保留CDFS名称及全称的含义。由于我个人
的精力有限,恕不对CDFS进行技术解释或各种技术支持。了解有关FAT知识,加上本源
码中非常详尽的中文注释,你可以很容易地了解和使用FAT。
CDFS是我在空余时间进行开发的,原始发行版本为CDFS-1.00,后续升级版本我会
继续添加更多功能,但并不会全部开源。如果你的项目有这方面的技术需求,可以联
系我。
我的QQ是529119594,有意加我的话,请写明"CDFS交流"字样.
附言:本人英文不怎么好,因此不喜欢加英文注释,如果你有兴趣将CDFS中的所有中
文全部翻译成英文,本人也非常感谢,并希望能回传一份给我。^_^
近期下载者:
相关文件:
收藏者: