hustdj
驱动牛犊
驱动牛犊
  • 注册日期2003-06-06
  • 最后登录2008-07-02
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
阅读:1715回复:9

FAT32文件存储问题?

楼主#
更多 发布于:2003-07-01 17:08
对于一个文件的存储,第一件事是在DIR区中写入相关的信息。

我的问题是,分配给文件的起始簇号是怎样分配的?

是按顺序分配,随机分配,还是按一定规定和算法来分配。

换句话说,我要写入一个文件, 我给它分配的簇号是不是随意
给一个空簇的地址即可。

这里有没有什么值得注意的地方?
mhxsoft
驱动牛犊
驱动牛犊
  • 注册日期2003-06-13
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分100分
  • 威望10点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-07-01 17:15
任何一个簇值为零的簇号都可以!
没有什么要特别注意的地方。
hustdj
驱动牛犊
驱动牛犊
  • 注册日期2003-06-06
  • 最后登录2008-07-02
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-07-01 17:30
多谢
lxb_gd
驱动太牛
驱动太牛
  • 注册日期2002-01-16
  • 最后登录2018-06-02
  • 粉丝0
  • 关注0
  • 积分72408分
  • 威望362391点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-07-01 17:45
如果磁盘很多凌乱的空簇,那你的fat处理速度就很慢,很有可能出错,一出错就会影响到别的文件。
建议你找到很多顺序的空簇,在写。
还有,单片机最好有大一些得缓存来存放fat表
hustdj
驱动牛犊
驱动牛犊
  • 注册日期2003-06-06
  • 最后登录2008-07-02
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-07-01 17:54
感谢
NewTech
驱动大牛
驱动大牛
  • 注册日期2002-10-02
  • 最后登录2010-03-27
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望263点
  • 贡献值0点
  • 好评度86点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-07-01 19:57
因该从FAT的开始进行扫描,从找到的第一个空块开始!
6楼#
发布于:2003-07-02 16:22
对于FAT32在BPB里面好象有一个是记录了第一个空闲的簇
mhxsoft
驱动牛犊
驱动牛犊
  • 注册日期2003-06-13
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分100分
  • 威望10点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-07-03 09:21
对于FAT32在BPB里面好象有一个是记录了第一个空闲的簇

没有。
wolfwoo22
禁止发言
禁止发言
  • 注册日期2003-03-11
  • 最后登录2016-04-11
  • 粉丝0
  • 关注0
  • 积分930分
  • 威望8970点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-07-03 09:29
用户被禁言,该主题自动屏蔽!
ROBBIE.zhao
驱动牛犊
驱动牛犊
  • 注册日期2002-11-13
  • 最后登录2004-11-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-07-09 12:16
对于FAT32在BPB里面好象有一个是记录了第一个空闲的簇

具体的说是在对于FAT16,和FAT12,就像前面所讲,找到一个空簇就行
对于FAT32,在bpb中有一个FSinfo的位,指到一个FSinfo的扇区,在这个扇区中,记录了下一个空簇的簇号。这可以加快查找fat的速度,如果这个值无效,则必须从fat头开始找空位置了


游客

返回顶部