⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fat16与fat32文件系统结构的主要区别.htm

📁 fat文件系统管理详细分析
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0044)http://cracker2003.nease.net/htm/disk010.htm -->
<HTML><HEAD><TITLE>FAT16与FAT32文件系统结构的主要区别</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId></HEAD>
<BODY background=FAT16与FAT32文件系统结构的主要区别.files/back01.jpg>
<TABLE width="100%" border=0>
  <TBODY>
  <TR>
    <TD width="100%"></TD></TR>
  <TR>
    <TD width="100%">当前位置:<A 
      href="http://cracker2003.nease.net/index.htm">首页</A>-<A 
      href="http://cracker2003.nease.net/htm/disk010.htm">磁盘文件</A>-FAT16与FAT32文件系统结构的主要区别</TD></TR></TBODY></TABLE>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"> </P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" 
align=center>FAT16与FAT32文件系统结构的主要区别</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"> </P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"><B>1.磁盘数据组织结构的区别</B></P>
<P 
style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; TEXT-INDENT: 32px">总体上FAT32与FAT16文件系统变化不大,文件系统仍然将逻辑盘的空间划分为DBR引导区(BOOT区)、文件分配表(FAT)、根目录表(FDT)和数据区(DATA区)。但有以下区别:<BR>·FAT16只有一个DBR,且只占用逻辑0扇区;FAT32中的DBR多了一个副本,分别起始于逻辑0扇区(xx柱、0头、1扇区)和逻辑6扇区(xx柱、0头、7扇区)。<BR>·FAT32在DBR副本和FAT1之间有保留扇区;FAT16没有保留扇区。<BR>·FAT16文件系统中的FAT1从逻辑0扇区(yy柱、1头、1扇区)开始;FAT32文件系统中的FAT1从逻辑32扇区(yy柱、1头、33扇区)开始。<BR>两个文件系统的数据组织结构示意图如图6-13<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<IMG height=180 src="FAT16与FAT32文件系统结构的主要区别.files/fat16-32.gif" width=416 
border=0></P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
图6-13 
文件系统的数据组织结构示意图<BR><B>2.DBR结构的区别</B><BR>FAT32中的DBR不仅多了一个副本,而且从偏移量0BH开始的BPB参数及一些相关地址的表示方法也有区别。如表6-15所示<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
表6-15 FAT16和FAT32文件系统的DBR中相关地址参数分配表</P>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=1>
  <TBODY>
  <TR>
    <TD align=middle width="15%">偏移量</TD>
    <TD align=middle width="11%">字节数</TD>
    <TD align=middle width="34%">FAT16</TD>
    <TD align=middle width="40%">FAT32</TD></TR>
  <TR>
    <TD align=middle width="15%">0B--0CH</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%">每个扇区的字节数</TD>
    <TD width="40%">每个扇区的字节数</TD></TR>
  <TR>
    <TD align=middle width="15%">0DH</TD>
    <TD align=middle width="11%">1</TD>
    <TD width="34%">每簇的扇区数</TD>
    <TD width="40%">每簇的扇区数</TD></TR>
  <TR>
    <TD align=middle width="15%">0E--0FH</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%">保留扇区数</TD>
    <TD width="40%">保留扇区数</TD></TR>
  <TR>
    <TD align=middle width="15%">10H</TD>
    <TD align=middle width="11%">1</TD>
    <TD width="34%">FAT个数</TD>
    <TD width="40%">FAT个数</TD></TR>
  <TR>
    <TD align=middle width="15%">11--12H</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%">根目录登记项个数</TD>
    <TD width="40%"> </TD></TR>
  <TR>
    <TD align=middle width="15%">13--14H</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%">磁盘总扇区数</TD>
    <TD width="40%"> </TD></TR>
  <TR>
    <TD align=middle width="15%">15H</TD>
    <TD align=middle width="11%">1</TD>
    <TD width="34%">磁介质类型说明符</TD>
    <TD width="40%">磁介质类型说明符</TD></TR>
  <TR>
    <TD align=middle width="15%">16--17H</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%">每个FAT表的扇区数</TD>
    <TD width="40%"> </TD></TR>
  <TR>
    <TD align=middle width="15%">18--19H</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%">每个磁道的扇区数</TD>
    <TD width="40%">每个磁道的扇区数</TD></TR>
  <TR>
    <TD align=middle width="15%">1A--1BH</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%">磁头的个数</TD>
    <TD width="40%">磁头的个数</TD></TR>
  <TR>
    <TD align=middle width="15%">1C--1FH</TD>
    <TD align=middle width="11%">4</TD>
    <TD width="34%">当前分区前隐含扇区数</TD>
    <TD width="40%">当前分区前隐含扇区数</TD></TR>
  <TR>
    <TD align=middle width="15%">20--23H</TD>
    <TD align=middle width="11%">4</TD>
    <TD width="34%"> </TD>
    <TD width="40%">逻辑盘总扇区数</TD></TR>
  <TR>
    <TD align=middle width="15%">24--25H</TD>
    <TD align=middle width="11%">2</TD>
    <TD width="34%"> </TD>
    <TD width="40%">每个FAT表的扇区数</TD></TR>
  <TR>
    <TD align=middle width="15%">27--2AH</TD>
    <TD align=middle width="11%">4</TD>
    <TD width="34%">FAT16格式磁盘系列号</TD>
    <TD width="40%"> </TD></TR>
  <TR>
    <TD align=middle width="15%">2B--35H</TD>
    <TD align=middle width="11%">11</TD>
    <TD width="34%">FAT16卷标名</TD>
    <TD width="40%"> </TD></TR>
  <TR>
    <TD align=middle width="15%">36--3AH</TD>
    <TD align=middle width="11%">5</TD>
    <TD width="34%">FAT16磁盘格式标志</TD>
    <TD width="40%"> </TD></TR>
  <TR>
    <TD align=middle width="15%">43--46H</TD>
    <TD align=middle width="11%">4</TD>
    <TD width="34%"> </TD>
    <TD width="40%">FAT32格式磁盘系列号</TD></TR>
  <TR>
    <TD align=middle width="15%">47--51H</TD>
    <TD align=middle width="11%">11</TD>
    <TD width="34%"> </TD>
    <TD width="40%">FAT32卷标名</TD></TR>
  <TR>
    <TD align=middle width="15%">52--56H</TD>
    <TD align=middle width="11%">5</TD>
    <TD width="34%"> </TD>
    <TD width="40%">FAT32磁盘格式标志</TD></TR></TBODY></TABLE>
<P><B>3.FAT表的区别</B><BR>与FAT16类似,FAT32仍然保存了两个相同的FAT文件分配表。<BR>·FAT16系统簇号用16位二进制数表示,从0002H到FFEFH个可用簇号(FFF0H到FFFFH另有定义,用来表示坏簇,文件结束簇等),允许每一逻辑盘的数据区最多不超过FFEDH(65518)个簇。<BR>·FAT32系统簇号改用32位二进制数表示,大致从00000002H到FFFFFEFFH个可用簇号。每簇的使用情况用32位二进制填写:<BR>未被分配的簇——零<BR>坏簇 
——特定值<BR>已分配的簇 
——非零值(文件的最后一簇为FFFFFF0FH)<BR>文件系统对数据区的存储空间是按簇进行划分和管理的,簇是空间分配和回收的基本单位,即一个文件总是占用若干个整簇。文件所使用的最后一簇所剩余的空间就不再使用,而是浪费掉了。从表6-16中可以看出,在相同容量的硬盘逻辑分区中采用FAT32簇比采用FAT16簇小很多,大大减少了空间的浪费。<BR>          表6-16 
FAT16、FAT32模式下逻辑盘容量与簇大小的关系</P>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=1>
  <TBODY>
  <TR>
    <TD align=middle width="50%" colSpan=2>FAT16</TD>
    <TD align=middle width="50%" colSpan=2>FAT32</TD></TR>
  <TR>
    <TD align=middle width="25%">逻辑盘容量</TD>
    <TD align=middle width="25%">每簇扇区数</TD>
    <TD align=middle width="25%">逻辑盘容量</TD>
    <TD align=middle width="25%">每簇扇区数</TD></TR>
  <TR>
    <TD align=middle width="25%">16--128MB</TD>
    <TD align=middle width="25%">4</TD>
    <TD align=middle width="25%">&lt;260MB</TD>
    <TD align=middle width="25%">1</TD></TR>
  <TR>
    <TD align=middle width="25%">128--256MB</TD>
    <TD align=middle width="25%">8</TD>
    <TD align=middle width="25%">260--8GB</TD>
    <TD align=middle width="25%">8</TD></TR>
  <TR>
    <TD align=middle width="25%">256--512MB</TD>
    <TD align=middle width="25%">16</TD>
    <TD align=middle width="25%">8--16GB</TD>
    <TD align=middle width="25%">16</TD></TR>
  <TR>
    <TD align=middle width="25%">512--1024MB</TD>
    <TD align=middle width="25%">32</TD>
    <TD align=middle width="25%">16--32GB</TD>
    <TD align=middle width="25%">32</TD></TR>
  <TR>
    <TD align=middle width="25%">1024--2048MB</TD>
    <TD align=middle width="25%">64</TD>
    <TD align=middle width="25%">&gt;32GB</TD>
    <TD align=middle width="25%">64</TD></TR></TBODY></TABLE>
<P><BR><B>4.FDT表及目录项的区别</B><BR>(1)FAT16文件系统的根目录区的FDT作为系统区的一部分,它是固定区域、固定大小的。它是从FAT表区之后紧接着的32个扇区,最多保存512个目录项。<BR>FAT32中的根FDT不再是固定的区域、固定的大小。它采用与子目录FDT相同的管理方式,根目录下的文件数目不再受最多512的限制。但一个目录项仍然占32个字节,可以是文件目录项、子目录项、卷标项(仅根目录有)、已删除目录项、长文件名目录项等。<BR>(2)FAT16的目录项在表6-6中已经给出了详细的说明。在FAT32目录项中原来在FAT16下保留未用的10个字节都有了新的定义,全部32字节的定义如表6-17所示。</P>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=1>
  <TBODY>
  <TR>
    <TD align=middle width="25%">字节位置</TD>
    <TD align=middle width="25%">FAT16</TD>
    <TD align=middle width="25%">FAT32</TD></TR>
  <TR>
    <TD align=middle width="25%">0--7字节</TD>
    <TD width="25%">表示文件名</TD>
    <TD width="25%">表示文件名</TD></TR>
  <TR>
    <TD align=middle width="25%">8--10字节</TD>
    <TD width="25%">表示文件的扩展名</TD>
    <TD width="25%">表示文件的扩展名</TD></TR>
  <TR>
    <TD align=middle width="25%">11字节</TD>
    <TD width="25%">文件的属性</TD>
    <TD width="25%">文件的属性</TD></TR>
  <TR>
    <TD align=middle width="25%">12--13字节</TD>
    <TD width="25%" rowSpan=5>保留未用</TD>
    <TD width="25%">仅长文件名目录项用,存储其对应的短文件名目录字节校验和等</TD></TR>
  <TR>
    <TD align=middle width="25%">14--15字节</TD>
    <TD width="25%">文件建立时间</TD></TR>
  <TR>
    <TD align=middle width="25%">16--17字节</TD>
    <TD width="25%">文件建立日期</TD></TR>
  <TR>
    <TD align=middle width="25%">18--19字节</TD>
    <TD width="25%">文件最新访问日期</TD></TR>
  <TR>
    <TD align=middle width="25%">20--21字节</TD>
    <TD width="25%">文件首簇号的高16位</TD></TR>
  <TR>
    <TD align=middle width="25%">22--23字节</TD>
    <TD width="25%">文件的创建时间</TD>
    <TD width="25%">文件最新修改时间</TD></TR>
  <TR>
    <TD align=middle width="25%">24--25字节</TD>
    <TD width="25%">文件的创建日期</TD>
    <TD width="25%">文件最新修改日期</TD></TR>
  <TR>
    <TD align=middle width="25%">26--27字节</TD>
    <TD width="25%">文件的首簇号</TD>
    <TD width="25%">文件首簇号的低16位</TD></TR>
  <TR>
    <TD align=middle width="25%">28--31字节</TD>
    <TD width="25%">文件的大小</TD>
    <TD width="25%">文件的大小(字节)</TD></TR></TBODY></TABLE>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
表6-17 
FAT16和FAT32的文件目录项内容及含义表<BR>对表6-17中文件目录项的几个参数值,例如“文件建立时间”、“文件建立日期”以及第11字节的文件属性等参数的表示方法,均可参阅6-6后的说明。</P>
<P align=center><A href="http://cracker2003.nease.net/htm/disk009.htm">上一页</A> 
<A href="http://cracker2003.nease.net/htm/disk001.htm">返回</A> 
下一页</P></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -