天天看点

学习分区表应该了解的参数

                                 学习分区表应该了解的参数

通过主引导记录定义的硬盘分区表,最多只能描述4个分区,如果想要多于4个分区,就要突破主引导记录中的分区描述方法,这在某些时候也是突破硬盘容量限制的一种方法。微软为了解决这个问题,采用了一种称做虚拟MBR的技术。所谓虚拟MBR,就是让主MBR在定义分区的时候,将多余的容量定义为扩展分区,指定该扩展分区的起止位置,根据起始位置指向的硬盘的某一个扇区,作为下一个分区表项,接着在该扇区继续定义分区。如果只有一个分区,就定义该分区,然后结束;如果不止一个分区,就定义一个基本分区和一个扩展分区,扩展分区再指向下一个分区描述扇区,在该扇区按上述原则继续定义分区,直至分区定义结束。

这些用以描述分区的扇区形成一个“分区链”,通过这个分区链,就可以描述所有的分区。为什么把它称为虚拟MBR呢?因为定义分区的这些扇区,其对分区的描述方式与MBR一样(但只能有一个基本分区和一个扩展分区或只有一个基本分区),但又没有引导和错误提示信息等部分,所以称为虚拟MBR(也称为扩展MBR,extended MBR,EBR,本书中两者是同一个概念,不再进行说明)。系统在启动时按照分区链的链接顺序查找分区,直至找出所有分区。这个链显然是个开链结构,如果形成一个环,系统本身并不会去判断它,它只是按照这个链忠实的寻找分区,而不进行任何额外的检测与处理。

所谓硬盘“逻辑锁”,就是让分区链形成一个环,这样系统在启动时就在分区表内循环,表现为系统无法引导,就是用软盘启动,也不能进入硬盘。明白了其结构原理,解决这个问题就很简单了。目前有多种方法解决这个问题,后面章节中再详述。系统就是用这种方法来使一个物理硬盘通过分区后看起来像是有多个硬盘。系统能够找到C以外的其他逻辑盘的惟一办法就是,沿着虚拟MBR分区表项所描述的分区链查找分区。

    图2-59是一个典型的虚拟MBR的实际例子,由于引导部分毫无意义,所以后面章节中再提到虚拟MBR时,就只列出其分区表部分。

为更深入的了解硬盘,还必须对硬盘的数据结构有个简单的了解。对于FAT16和FAT32文件系统(NTFS采用不同的文件管理技术,另做介绍),硬盘上的数据按照其不同的特点和作用大致可分为5部分:MBR区、DBR区、FAT区、DIR区和DATA区。其中,MBR由分区软件创建,而DBR区、FAT区、DIR区和DATA区由高级格式化程序创建。文件系统写入数据时只是改写相应的FAT区、DIR区和DATA区。也正是这5个区域共同作用的结果,才使整个硬盘的管理有条不紊。下面对这5个区域分别进行介绍。

MBR区

    MBR,即主引导记录区,位于整个硬盘的0磁道0柱面1扇区。在总共512字节的主引导扇区中,MBR的引导程序占用其中的前446个字节(偏移0~偏移1BDH),随后的64个字节(偏移1BEH~偏移1FDH)为DPT(Disk Partition Table,硬盘分区表),最后的两个字节“55  AA”(偏移1FEH~偏移1FFH)是分区有效结束标志。由它们共同构成硬盘主引导记录,也称主引导扇区。有时硬盘主引导记录专指MBR的引导程序,本书中对硬盘主引导记录和硬盘主引导扇区不作区分。 (查看实际的MBR,并记住其特征)

DBR区

    DBR(DOS Boot Record),操作系统引导记录区。通常位于硬盘0柱1面1扇区,是操作系统可以直接访问的第一个扇区。它包括一个引导程序和一个被称为BPB(BIOS Parameter Block)的本分区参数记录表。引导程序的主要任务是,当MBR将系统控制权交给它时,判断本分区根目录前两个文件是不是操作系统的引导文件。以DOS为例,即是IO.SYS和MSDOS.SYS。低版本的DOS要求这两个文件必须是前两个文件,即位于根目录的起始处,占用最初的两个目录项,高版本已没有这个限制。另外,Windows与DOS是一个家族,所以Windows也沿用这种管理方式,只是文件名不一样。如果确定存在,就把IO.SYS读入内存,并把控制权交给IO.SYS。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数,分配单元大小等重要参数。 (查看实际的DBR,并记住其特征)

FAT区

    在DBR之后就是FAT(File Allocation Table,文件分配表)区。同一个文件的数据并不一定完整地存放在磁盘的一个连续的区域内,往往会分成若干段,像一条链子一样存放。这种存储方式称为文件的链式存储。硬盘上的文件常常要进行创建、删除、增长、缩短等操作。这样的操作做得越多,盘上的文件就可能被分得越零碎(每段至少是1簇)。但是,由于硬盘上保存着段与段之间的连接信息(即FAT),操作系统在读取文件时,总是能够准确地找到各段的位置并正确读出。不过,这种以簇为单位的存储法也是有其缺陷的,这主要表现在对空间的利用上。每个文件的最后一簇都可能有未被完全利用的空间(称为尾簇空间)。一般来说,当文件个数比较多时,平均每个文件要浪费半个簇的空间。

(查看实际的FAT,并记住其特征)

     本文转自shenleigang 51CTO博客,原文链接:http://blog.51cto.com/shenleigang/148792,如需转载请自行联系原作者

继续阅读