FAT
来源:互联网 发布:淘宝怎么查看买家信用 编辑:程序博客网 时间:2024/05/16 15:11
FAT背景
1.FAT表(File Allocation Table),文件分配表,是Microsoft在FAT文件系统中用于磁盘数据/文件索引和定位引进的一种链式结构。把磁盘比作一本书,FAT表可以认为相当于书中的目录,而文件就是各个章节的内容。但FAT表示方法却与目录有很大不同,在FAT文件系统中,文件的存储依照FAT表指定的簇链式数据结构来进行,同时,FAT文件系统将组织数据时使用的目录也抽象成文件,以简化对数据的管理。2.FATFS16使用了16位的空间来表示每个扇区(sector)配置文件的情形,故称之为FAT16。(FAT12、FAT32依此类推)。簇(Cluster),就是磁盘的配置单位,就像图书馆内一格一格的书架一样,每个要存到磁盘的文件就必须配置足够数量的簇,才能存放到磁盘中。簇是由扇区组成,每个簇都是扇区的整数倍。3.文件占用磁盘空间时,基本单位不是字节而是簇。簇的大小与磁盘的规格有关,一般情况下,软盘每簇是1个扇区,硬盘每簇的扇区数与硬盘的总容量大小有关,可能是4、8、16、32、64......FAT文件系统下,每一个磁盘被分成固定大小的簇,每个簇至少512字节,其大小可成倍增长,最大32K。FAT16系统中,每个簇都是由唯一的索引号--单个16位二进制数来标识,因为16位二进制最大为65536,所以FAT分区所拥有的簇数量不可能超过65536个,簇的数量和大小的限制,就是FAT16分区不能超过2GB的原因(寻址字节也会限制分区大小,如当FAT32使用2个字节寻址限定其分区不超过4GB)。4.FAT中的入口连接着一个文件的各个簇,文件的目录入口包含其第一个簇的索引号,而该簇在FAT中的入口又包含下一个簇的索引号,依此类推。一个文件的最后一簇对应的FAT入口则包含一个特殊的文件终止符,未使用的簇和损坏的簇也会用特殊代码标识。5.FAT12、FAT16、FAT32区分办法:簇数量。FAT12一定小于4096,FAT16一定小于65536,FAT32一定大于65536。
FatFs库函数:
f_mount:开辟一个工作区,这个函数是必须的,应该放在程序的最前面。example: int main(void) { FATFS *hat;//申明一个文件系统hat hat = malloc(sizeof(FATFS));//为系统"hat"分配一个FATFS应有的内存空间 f_mount(hat,"",0);//为系统"hat"开辟一块工作区 f_open(...//打开文件等等操作 ... free(hat);//释放系统“hat”的内存空间 }return:http://elm-chan.org/fsw/ff/doc/rc.html#ok
阅读全文
0 0
- FAT
- fat
- FAT
- FAT结构
- FAT文件系统
- MTK6268-FAT
- FAT结构
- FAT文件系统
- FAT文件系统
- fat tree
- FAT文件系统
- fat mouse
- Fat Models
- fat文件系统
- lose fat
- FAT file system-FAT Type Determination
- FAT file system-FAT Volume Initialization
- 怀念404-fat
- QThread类
- 解决 OGRE 多边形总在最前的问题
- Kotlin_函数的范围
- 525. Contiguous Array
- php面向对象-一揽子方案
- FAT
- ORA-28547[连接服务器失败,可能是Oracle Net 管理错误]
- 微信赞赏不适合国内免费模式主导的互联网市场
- 移动端mui框架写的手机wap模板
- 建造者模式(Builder Pattern)-创建型模式
- 函数式编程扫盲篇
- 函数式编程初探
- Go并发:访问共享数据
- 【EMGUCV】图像的直方图均衡化增强