【原创】再介绍一下硬盘知识


①零磁道
零磁道处于硬盘上一个非常重要的位置,硬盘的主引导记录区(MBR)就在这个位置上。零磁道一旦受损,将使硬盘的主引导程序和分区表信息遭到严重破坏,从而导致硬盘无法自检(见图1)。
②MBR
当通过FDisk或其他分区工具对硬盘进行分区时,分区软件会在硬盘0柱面0磁头1扇区建立MBR(Main Boot Record),即为主引导记录区,位于整个硬盘的第一个扇区,在总共512字节的主引导扇区中,主引导程序只占用了其中的446个字节,64个字节交给了DPT(Disk Partition Table硬盘分区表),最后两个字节(55 AA)属于分区结束标志。主引导程序的作用就是检查分区表是否正确以及确定哪个分区为引导分区,并在程序结束时把该分区的启动程序调入内存加以执行。
③DPT
分区表DPT(Disk Partition Table),把硬盘空间划分为几个独立的连续的存储空间,也就是分区。分区表DPT则以80H或00H为开始标志,以55AAH为结束标志。分区表决定了硬盘中的分区数量,每个分区的起始及终止扇区、大小以及是否为活动分区等。通过破坏DPT,即可轻易地损毁硬盘分区信息。分区表分为主分区表和扩展分区表。
主分区表位于硬盘MBR的后部。从1BEH字节开始,共占用64个字节,包含四个分区表项,这也就是为什么一个磁盘的主分区和扩展分区之和总共只能有四个的原因。每个分区表项的长度为16个字节,它包含一个分区的引导标志、系统标志、起始和结尾的柱面号、扇区号、磁头号以及本分区前面的扇区数和本分区所占用的扇区数。其中“引导标志”表明此分区是否可引导,即是否活动分区。当引导标志为“80”时,此分区为活动分区;“系统标志”决定了该分区的类型,如“06”为DOS FAT16分区,“0b”为DOS FAT32分,“63”为UNIX分区等;起始和结尾的柱面号、扇区号、磁头号指明了该分区的起始和终止位置。
分区表项的16个字节分配如下:
第1字节: 引导标志
第2字节: 起始磁头
第3字节: 低6位为起始扇区, 高2位与第4字节为起始柱面
第4字节: 起始柱面的低8位
第5字节: 系统标志
第6字节: 终止磁头
第7字节: 低6位为终止扇区, 高2位与第8字节为终止柱面
第8字节: 终止柱面的低8位
第9-12字节: 该分区前的扇区数目
第13-16字节: 该分区占用的扇区数目
扩展分区作为一个主分区占用了主分区表的一个表项。在扩展分区起始位置所指示的扇区(即该分区的第一个扇区)中,包含有第一个逻辑分区表,同样从1BEH字节开始,每个分区表项占用16个字节。逻辑分区表一般包含两个分区表项,一个指向当前的逻辑分区,另一个则指向下一个扩展分区。下一个扩展分区的首扇区又包含了一个逻辑分区表,这样以此类推,扩展分区中就可以包含多个逻辑分区。为方便说明,我们把这一系列扩展分区和逻辑分区分别编号,主扩展分区为1号扩展分区,第一个逻辑分区表所包含的两个分区分别标为1号逻辑分区和2号扩展分区,依次类推。
主分区表中的分区是主分区,而扩展分区表中的是逻辑分区,并且只能存在一个扩展分区。
④DBR
DBR(Dos Boot Record)是操作系统引导记录区。它位于硬盘的每个分区的第一个扇区,是操作系统可以直接访问的第一个扇区,它一般包括一个位于该分区的操作系统的引导程序和相关的分区参数记录表。
⑤FAT
FAT(file allocation table)即文件分配表,记录了分区中簇的的使用情况,FAT表的大小与硬盘的分区的大小有关,为了数据安全起见,FAT一般做两个,第二FAT为第一FAT的备份。
⑥DIR
DIR是DIRECTORY即根目录区的简写,根目录区存储了文件系统的根目录中的文件或者目录的信息(包括文件的名字,大小,所在的磁盘空间等等),FAT12,FAT16的DIR紧接在第二FAT表之后,而FAT32的根目录区可以在分区的任何一个簇。
⑦MFT
MFT(Master File Table) 是NTFS中存储有关文件的各种信息的数据结构,包括文件的大小,时间,所占据的数据空间等等。

以FAT32为例,FAT32分区的的0-2扇区为FAT32文件系统的DBR即引导扇区,3-5扇区为0-2扇区的备份。6-31扇区为空,32扇区开始为第一个FAT表,FAT表的大小与硬盘的分区的大小有关。随后是第2个FAT表,剩余的空间都是实际的文件所占用的,包括目录和文件。FAT32文件系统的根目录并不一定是数据区的第一个簇,它可以位于数据区的任何一个簇,这也是FAT32的根目录大小不在受255个文件限制的原因,这也是FAT32的文件名可以支持长文件名的原因之一。
最后编辑2006-07-02 15:57:35.810000000