硬盘分区简介
硬盘由很多盘片(platter)组成,每个盘片的每个面都有一个读写磁头。如果有N个盘片。就有2N个面,对应2N个磁头(Heads),从0、1、2开始编号。每个盘片被划分成若干个同心圆磁道(逻辑上的,是不可见的)。每个盘片的划分规则通常是一样的。这样每个盘片的半径均为固定值R的同心圆在逻辑上形成了一个以电机主轴为轴的柱面(Cylinders),从外至里编号为0、1、2……每个盘片上的每个磁道又被划分为几十个扇区(Sector),通常的容量是512byte,并按照一定规则编号为1、2、3……形成Cylinders×Heads×Sector个扇区。这三个参数即是硬盘的物理参数。我们下面的很多实践需要深刻理解这三个参数的意义。
硬盘的CHS参数:
C(Cylinders):柱面——也就是磁道柱面数也就是磁道数
H(Heads):磁头——每个盘片的每个面都有一个读写磁头。
S(Sector):扇区
形成的扇区总数为:Heads*Cylinders*Sector
主引导记录(主引导扇区)位于0柱面0磁头1扇区(硬盘的第一扇区)。
硬盘分区实际上是对硬盘的格式化。
分区状态:主分区,扩展分区,非DOS分区。
常见分区格式:FAT12,FAT16,FAT32,NTFS,EXT2,EXT3,EXT4等等。
而MBR,GPT是硬盘格式与FAT12,FAT32有区别的。
FAT,NTFS是描述分区的情况,而MBR,GPT描述的是这个硬盘的情况
硬盘的物理结构
MBR,全称为Master Boot Record,即硬盘的主引导记录。
一般将MBR分为广义和狭义两种:广义的MBR包含整个扇区(主引导程序、分区表及分隔标识),也就是上面所说的主引导记录;而狭义的MBR仅指主引导程序而言。通常都指的都是广义。
硬盘的0柱面、0磁头、1扇区称为主引导扇区(也叫主引导记录MBR)。它由三个部分组成,主引导程序、硬盘分区表DPT(Disk Partitiontable)和硬盘有效标志,其值为AA55,存储时低位在前,高位在后,即看上去是55AA。注意:55在低位,AA在高位
它不属于磁盘上的任何分区,因而分区空间内的格式化命令FORMAT. COM不能清除主引导记录的任何信息。
硬盘的引导记录(MBR)是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。但我们可以用ROM-BIOS中提供的INT13H的2号功能来读出该扇区的内容,也可用软件工具Norton8.0中的DISKEDIT.EXE来读取。
0000-0088 |
Master Boot Record 主引导程序 |
主引导 程序 |
0089-01BD |
出错信息数据区 |
数据区 |
01BE-01CD |
分区项1(16字节) |
分区表 |
01CE-01DD |
分区项2(16字节) |
|
01DE-01ED |
分区项3(16字节) |
|
01EE-01FD |
分区项4(16字节) |
|
01FE |
55 |
结束标志 |
01FF |
AA |
具体含义
●主引导程序:它负责从活动分区中装载,并运行系统引导程序。(每个活动分区都有一个引导程序)
●分区表(DPT,Disk Partition Table)含4个分区项,偏移地址01BEH--01FDH,每个分区表项长16个字节,共64字节为分区项1、分区项2、分区项3、分区项4。
●结束标志字,偏移地址01FE--01FF的2个字节值为结束标志55AA,如果没有这个标志,操作系统会认为磁盘没有初始化,无法正确加载磁盘的分区。
其中分区项表(16字节)内容及含义
存贮字节位 |
内容及含义 |
第1字节 |
引导标志。80H表示活动分区, 00H表示非活动分区。 |
第2、3、4字节 |
本分区的起始磁头号、扇区号、柱面号。其中: 磁头号——第2字节; 扇区号——第3字节的低6位; 柱面号——为第3字节高2位+第4字节8位。 |
第5字节 |
分区类型符。 00H——表示该分区未用(即没有指定); 06H——FAT16基本分区; 0BH——FAT32基本分区; 05H——扩展分区; 07H——NTFS分区; 0FH——(LBA模式)扩展分区(83H为Linux分区等)。 |
第6、7、8字节 |
本分区的结束磁头号、扇区号、柱面号。其中: 磁头号——第6字节; 扇区号——第7字节的低6位; 柱面号——第7字节的高2位+第8字节。 |
第9、10、11、12字节 |
本分区之前已用了的扇区数。 |
第13、14、15、16字节 |
本分区的总扇区(共32位,232*512B=2TB,故最大支持2T分区) |
MBR特点:
●支持最大卷(分区)为2TB
●每个磁盘最多由4个主分区或三个主分区,1个扩展分区和无限制的逻辑驱动器
启动PC机时,BIOS自检,系统首先对硬件设备进行测试,测试成功后进入自举程序INT 19H,然后读系统磁盘0柱面、0磁头、1扇区的主引导记录(MBR)内容到内存指定单元0:7C00地址开始的区域,并执行MBR程序段。
硬盘的主引导记录(MBR)是不属于任何一个操作系统的,它先于所有的操作系统而被调入内存,并发挥作用,然后才将控制权交给主分区(活动分区)内的操作系统,并用主分区信息表来管理硬盘。
MBR程序段的主要功能如下:
●检查硬盘分区表是否完好。
●在分区表中寻找可引导的“活动”分区。
●多重引导时,提供菜单,用户可以选择不同的开机选项这也是多重引导的重要功能
●将活动分区的引导扇区(Boot Sector)内容装入内存。在DOS分区中,此扇区内容称为DOS引导记录(DBR)。
Globally Unique Identifier Partition TableFormat
一种由基于 Itanium 计算机中的可扩展固件接口 (EFI) 使用的磁盘分区架构。与主启动记录 (MBR) 分区方法相比,GPT 具有更多的优点
GUID 分区表 (GPT) 磁盘分区样式支持最大卷为 18 EB (exabytes)并且每磁盘最多有 128 个分区。与 MBR 分区的磁盘不同,至关重要的平台操作数据位于分区,而不是位于非分区或隐藏扇区。另外,GPT 分区磁盘有多余的主要及备份分区表来提高分区数据结构的完整性。
下面说一下MBR分区的电脑启动时的大概流程
1.BIOS自检:打开电脑电源,此时主板通电,ROM里的BIOS运行(此时控制权还在BIOS,CPU尚未通电),BIOS会对整个电脑的硬件进行自检。硬件自检的内容主要是看CPU、显卡、内存等是否安装好或有松动等等。(这个过程在早期的windows 95和windows 98中是可以看到的(如下图),现在XP后已经默认不显示了)
在自检过程中,若出现问题,电脑会报出指定的各种“嘀”声音,如内存没插好一般会出现“嘀…嘀…”的连续有间隔的长音,不同的主板对不同的错误定义的声音是不同的
2.将MBR读入RAM:若主板自检成功,BIOS根据用户指定的启动顺序启动。大部分都从硬盘启动。这里以最常见的MBR为例。接下来BIOS将这主引导记录区(512字节)读到内存RAM中,将控制权交给中央CPU,CPU首先检查扇区结束标志已确认引导记录没有被破坏。
3.执行MBR,选择活动分区:接下来执行主引导记录MBR,MBR在分区表DPT或扩展分区表中选择默认的活动分区。
4.加载活动分区引导程序:再加载活动分区的引导程序进一步完成电脑的启动。(每个分区都有一个引导扇区,引导程序就在这个引导扇区内)
下图是C为活动分区的示意图。