-
在Linux系统中,每个设备都被当成一个文件来对待,每个设备都会有设备文件名。
-
为什么要分区?
①数据的安全性。c盘重装,不会影响到D盘,每个分区的数据是分开的。
②系统的性能考虑。分区将数据集中在某个柱面区段,当要读取数据时,查找的范围变小。 -
在MBR分区表格式中,磁盘的第一个扇区(原来一个扇区为512个字节,现在有了4k字节的设计出现)主要记录了两个重要的信息,分别是:主引导记录(Master Boot Record ,MBR):可以安装启动引导程序的地方,有446个字节;和分区表:记录整块硬盘的分区状态有64个字节。所以在MBR分区方式中,所谓的分区只是针对那64个字节的分区表进行设置而已。
-
当系统要写入磁盘时,一定会先参考磁盘分区表,才能针对某个分区进行数据的处理。所以在MBR格式中如果第一个扇区有损坏那么可能磁盘无法恢复。
-
磁盘的MBR分区方式中,主要与拓展分区最多有4个,逻辑分区的设备文件名号码一定从5开始。
-
GPT分区已经没有了拓展与逻辑分区的概念,每组记录都可以独立存在,每个都可以看成是主要分区,都可以格式化。
-
在MBR分区表格式中,由于分区表仅有64个字节,因此最多仅能有4组记录区,每组记录区记录了该区段的起始与结束的柱面号码。(这四个分区被称为主要或拓展分区),所以磁盘默认的分区表仅能写入四组分区信息。
-
但实际生活中经常有4组分区以上的分区,这是通过拓展分区的方式来处理的,拓展分区的意思是:既然第一个扇区所在的分区表仅能记录四组分区信息,那么是否可以利用额外的扇区来记录分区信息。
-
由拓展分区分出来的分区就是逻辑分区
-
MBR分区表由于每组分区表仅有16个字节, 因此可以记录的信息相当有限,MBR分区表问题:①无法使用2.2T以上的容量
②MBR仅有一个区块,若被破坏后,经常无法恢复。
③MBR内的存放启动引导程序的区块仅446字节,无法存放较多的程序代码。 -
所以就有了GPT磁盘分区表,因为过去一个扇区大小为512字节,现在有了4k扇区设计,所以为了兼容所有的硬盘,在扇区的定义上大多使用的是逻辑区块地址(Logical Block Address , LBA)来处理,GPT将磁盘所有区块以此LBA(默认为512字节)来规划,而第一个LBA称为LBA0(以0开始编号)。与MBR仅使用第一个512字节区块来记录不同,GPT使用了32个LBA区块来记录分区信息
-
LBA0(MBR兼容区块):与MBR模式相似,也分为两部分,一个就是存储启动引导程序,另一个区块仅放一个特殊标志符,来标志这是GPT格式磁盘。
-
LBA1(GPT表头记录):记录了分区表本身的位置和大小,记录了备份用的GPT分区放置的位置,还放置了分区表校验码。
-
LBA2-33(实际记录分区信息处):每个LBA记录4组分区记录,所以共有4*32=128组分区记录,因为每个LBA512字节,所以每组记录用到128字节。
-
启动流程中的BIOS与UEFI启动检测程序。
①BIOS搭配MBR/GPT的启动流程:
BIOS是计算机启动时,计算机会主动执行的第一个程序。
1、BIOS:启动主动执行的固件,会认识第一个可启动的设备。
2、MBR:第一个可启动设备的一个扇区内的主引导记录块,内含启动引导代码。
3、启动引导程序(boot loader):一个可读取内核文件来执行的软件。
4、内核文件:开始启动操作系统。