cloud_zhou2000
驱动老牛
驱动老牛
  • 注册日期2002-10-31
  • 最后登录2011-03-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1960回复:8

关于U盘及读卡器文件系统的物理结构

楼主#
更多 发布于:2003-12-17 15:28
关于U盘及读卡器文件系统的物理结构,
有谁知道是怎么组织的吗?
好象第一个物扇区并不对应第一个逻辑扇区。
FAT及目录区也不在相应的位置。
clementzhao
驱动大牛
驱动大牛
  • 注册日期2003-05-08
  • 最后登录2009-02-20
  • 粉丝0
  • 关注0
  • 积分28分
  • 威望63点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-12-17 16:02
第一个物扇区本来就不对应第一个逻辑扇区。
cloud_zhou2000
驱动老牛
驱动老牛
  • 注册日期2002-10-31
  • 最后登录2011-03-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-12-17 16:59
是什么样对应关系?
我找了下没找到。摸索了几天。好象BOOT是浮动的,重新格式化后就变了。有这方面的资料吗?
flycat0101
驱动小牛
驱动小牛
  • 注册日期2002-06-24
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-12-17 23:09
是什么样对应关系?
我找了下没找到。摸索了几天。好象BOOT是浮动的,重新格式化后就变了。有这方面的资料吗?

下面这个是硬盘的分区信息,或许有一些帮助吧,我曾用它做过MMC的分区信息,应该是没有问题的。当然MBR中4个16字节的分区信息就要相应的改变了,比如起始头、起始扇区、起始柱面以及终止头、扇区、柱面。其实最简单的方法就是找一个U盘,将他的文件系统信息读出来不就知道了?
0 磁道0 柱面1扇区 MBR 区(主引导记录区)
0 磁道1 柱面1扇区 DBR 区(操作系统引导记录区)
0 磁道1 柱面2扇区~
0 磁道1 柱面2+i-1扇区 FAT 区(文件分配表区)
                     视磁盘容量而定,其占用的扇区数为i,
对于FAT16,则所占扇区数i=(总簇数*2/512),每扇区字节数为512 字节
0 磁道1 柱面2+i 扇区~
0 磁道1 柱面2+2i-1 扇区 第二个FAT 区,内容与第一个FAT 区一样
0 磁道1 柱面2+2i 扇区~
0 磁道1 柱面2+2i+j-1 扇区 DIR 区(根目录区)
                                视磁盘根目录项而定,其占用扇区数为j
0 磁道1 柱面2+2i+j 扇区~ DATA 区(数据区)文件数据真正开始存放的地方
我思,故我在
cloud_zhou2000
驱动老牛
驱动老牛
  • 注册日期2002-10-31
  • 最后登录2011-03-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-12-18 09:58
我读出的FLASH是这样:
    171 BLOCK 0 PAGE 是DBR 区(操作系统引导记录区)
    没有MBR 区(主引导记录区)
    162 BLOCK 17 PAGE 是DIR 区(根目录区)
    DATA区我还没开始找,因为我想先把DBR与DIR之间的关系搞清楚。
cloud_zhou2000
驱动老牛
驱动老牛
  • 注册日期2002-10-31
  • 最后登录2011-03-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-12-18 10:02
而每次格式化后DBR区位置就变了,有最小时是 23 BLOCK 0 PAGE
最大时是 200 多BLOCK 0 PAGE
cloud_zhou2000
驱动老牛
驱动老牛
  • 注册日期2002-10-31
  • 最后登录2011-03-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-12-18 10:10
最奇怪的是我把 DBR 内的数据做了一些小的改动后,再把U盘插在电脑上,于是电脑就提示没有格式化,要求格式化。格式化后我读出DBR的位置就往后移了一个块。
这样连续的做下去,到了某个位置后DBR就不是移动一个块,而是移动很长一段距离,然后又每次后移一个块。
最终到了一个块后,系统就提示无法完成格式化了。
这时就只有把FLASH全部擦掉才能格式化。
cloud_zhou2000
驱动老牛
驱动老牛
  • 注册日期2002-10-31
  • 最后登录2011-03-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-12-18 10:13
我估计DBR是放在某段区域内,这段区域是保留的。目的是为了防止DBR坏了后有个后备。
flycat0101
驱动小牛
驱动小牛
  • 注册日期2002-06-24
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2003-12-18 10:15
我读出的FLASH是这样:
    171 BLOCK 0 PAGE 是DBR 区(操作系统引导记录区)
    没有MBR 区(主引导记录区)
    162 BLOCK 17 PAGE 是DIR 区(根目录区)
    DATA区我还没开始找,因为我想先把DBR与DIR之间的关系搞清楚。

U盘上由于不用再进行分区,所以没有MBR
而DBR应该放在0扇区,后面跟着两个FAT区,然后才是根目录区,最后是数据区
我思,故我在
游客

返回顶部