发新帖我要提问
12
返回列表
打印

FAT文件系统该怎样学习

[复制链接]
楼主: inter_zhou
手机看帖
扫描二维码
随时随地手机跟帖
21
jack.king| | 2009-11-19 17:12 | 只看该作者 回帖奖励 |倒序浏览
请问文件系统在什么时候可以用到!呵呵

使用特权

评论回复
22
inter_zhou|  楼主 | 2009-11-20 12:41 | 只看该作者
感谢古道热肠回复!

使用特权

评论回复
23
inter_zhou|  楼主 | 2009-11-20 18:08 | 只看该作者
这个是我根据BPB的相关参数找到的FAT表的起始扇区,也就是说是FAT表的起始位置。
我把U盘格式化之后只放了一个32K的文件。
现在有几点疑问:
1,文件的结束簇的标志难道不是0XFFFFFFF8~0XFFFFFFFF吗?这里为什么是0FFFFFFF?
2,最开始前面4个字节0X0FFFFFF8如果是磁盘标示符,那后面的8个字节(4个字节为一组)分别又是什么含义?
3,根据BPB参数可以求得数据区的起始扇区,实际为:2040号扇区,然后到该扇区的位置找到了长文件名和文件的起始簇,起始簇为0X00000003。并且根据起始簇也找到了文件的实际位置.疑问:为什么这里的文件起始簇为0X00000003,而FAT表里面所示为0X00000004?

FAT表起始扇区.rar

18.68 KB

使用特权

评论回复
24
古道热肠| | 2009-11-21 11:04 | 只看该作者
呵呵,图看过了
1。文件的正常结尾簇号为FFFFFFFF,FFFFFFF8-FFFFFFFF中的其它值有详细的规定,在FAT32文件系统中有详细的介绍,网上去找一下由厦新电子公司的网友翻译的FAT32文档中有详细的介绍
2。印象中FAT表要保护2个簇号作为特殊用途,其中第1个用于标识是FAT扇区。
3。起始簇号是00000003表明FAT表扇区的Sector[3]的内容是文件的下一个簇号。如果其值为FFFFFFFF,表明文件结束,如果是00000004,表明文件的下一簇的链接或者结尾符在Sector[4]的位置,注意,此处数组的内型为长整形,小端模式。

使用特权

评论回复
25
inter_zhou|  楼主 | 2009-11-25 18:12 | 只看该作者
这几天花了些零零散散的时间看FATFS。
网络上很多都说FATFS的效率是比较高的,可移植性也比较强!

但是发现一个问题,FATFS是适合每个扇区是512字节的FAT系统,如果每个扇区的字节数不是512字节,那FATFS完全无法工作。
不知道大家在开发过程中有没有遇到过不是512字节每扇区的分区。目前为止我还没有遇到过

使用特权

评论回复
26
xn_liu123| | 2010-4-13 17:51 | 只看该作者
正在学习FAT32,好好研究一下各位的发言:)

使用特权

评论回复
27
dong2007| | 2010-4-13 19:02 | 只看该作者
哈哈哈,fat____ing

使用特权

评论回复
28
azziporah| | 2010-4-14 08:56 | 只看该作者
本帖最后由 azziporah 于 2010-4-14 08:58 编辑
这几天花了些零零散散的时间看FATFS。
网络上很多都说FATFS的效率是比较高的,可移植性也比较强!

但是发现一个问题,FATFS是适合每个扇区是512字节的FAT系统,如果每个扇区的字节数不是512字节,那FATFS完全无法工 ...
inter_zhou 发表于 2009-11-25 18:12


FAT的BPB部分第一个值就是Bytes Per Sector
此值占据2-Byte,因此扇区大于512-Byte是可以的
FAT的设计可以适应不同的扇区大小,这也是格式化的作用之一

大扇区的产品早在数年前就已经提上日程
然而因为兼容性的问题涉及面甚广,迟迟未能上市
最近西部数据已经推出大扇区硬盘,扇区大小为4096-Byte,即8倍传统扇区大小

另外说一句,想深刻理解FAT的话,试试完全弄懂磁盘、分区、卷、格式化等概念
多看Wikipedia

使用特权

评论回复
29
wgain| | 2013-4-27 11:21 | 只看该作者
xwj 发表于 2009-11-13 17:34
其实FAT还是很好理解的
1、你先由MBR(主引导扇区)找到分区表,(这个很好找,都在任何硬盘的第一个扇区里 ...

感觉提供资料

使用特权

评论回复
30
非著名中医| | 2015-12-7 22:52 | 只看该作者

使用特权

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

本版积分规则