迅维网

查看: 2819|回复: 3
打印 上一主题 下一主题

MBR,GPT,EFI分区,混合分区表,文件系统等名词简单释义(转)

[复制链接]
跳转到指定楼层
1#
发表于 2015-12-14 21:18:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 来自: 河北 来自 河北

马上注册,获取阅读精华内容及下载权限

您需要 登录 才可以下载或查看,没有帐号?注册

x
MBR:
主引导记录(Master Boot Record),位于磁盘LBA0,每个LBA表示一个磁盘逻辑扇区即512B。MBR由三部分组成,分别是446B的引导代码;64B的分区表(DPT);2B的结束代码。简单跟踪一下操作系统的启动过程吧:打开机器电源——BIOS自检——BIOS根据COMS里的设置选择启动磁盘——BIOS复制启动磁盘MBR到内存——MBR的引导代码指向DPT中标记为活动的分区里的分区引导记录PBR——PBR在分区中找到操作系统的引导程序——系统被引导。由于MBR的分区表只有64B,所以能记录的主分区只有4个,每个分区用16B去记录分区类型,起始扇区,总扇区数,其中里面有4B是记录分区使用的总扇区数,对于使用512B作扇区的硬盘,4B就能记录4,294,967,296个扇区,即2TB左右。

分区表:
DPT即分区表。这个表记录着每个分区的位置和大小。很多人都有个错误概念,就是把一个分区的硬盘说成是没有分区。分区变成了复数分区的代名词。硬盘是先要有分区,再有文件系统才能读写数据的。
MBR里的分区表只能记录4个主分区。但是win有一种叫做扩展分区的玩意。在win的磁盘里只能有一个扩展分区或者没有。这个扩展分区的作用就能保存一个指向下一个逻辑分区的分区表。而逻辑分区又可以保存指向下一个逻辑分区的分区表。但这种分区非常不稳定,不宜保存重要数据。

分区:
每个硬盘都需要分区(动词),不分区是无法使用的。分区(名词)也叫做卷,为了避免这里把分区二字作动词或名词理解,我这里把分区(动词)保持不变,用卷来表示它的名词。在win里我们的习惯思维是C盘,D盘,E盘什么盘的,这个盘也就是卷了。在OS X里的卷是没有盘符的,只有一个绝对的名字和卷名字。OS X里的分区的绝对名字是disk0s1,disk0s2,disk0s3等,其中disk0是指整个硬盘,而且是Mac的第一个硬盘。UNIX所有的设备都在/dev这个目录下面,也就是说第一个磁盘的位置是/dev/disk0。每个分区都需要挂载才能使用的,那么就需要一个位置去挂载分区了,这个位置是/volumes,而第一个磁盘第一个分区的位置是/volumes/disk0s1。卷名字就是用户自定义的名称了,根据卷的文件系统不同名字支持的字符也不同,例如FAT貌似只能用大写字母。

GUID分区表:
GUID分区表即是GPT(GUID Partition Table),由于MBR里的DPT存在局限性,所以GPT应运而生。GPT磁盘的LBA0是保存着一个 Protect MBR的,这个扇区只保存着一个特殊分区类型和结束代码。当操作系统检查到这个 Protect MBR后是会直接忽略掉的。如果这个操作系统无法认出GPT磁盘,那么只会把整个磁盘标记为一个未知分区。
在LBA0之后的LBA1记录着GPT的头,GPT的头记录着自己和下面的分区表起始扇区和结束扇区,还有一份在LBA-1~LBA-34的GPT备份记录。
LBA2开始就是分区表了,这个分区表有足够的空间记录分区的总扇区,而且最大能创建超过128个主分区。
BIOS是没有办法引导装在GPT磁盘上的操作系统的,必须要是EFI才能引导。引导过程是这样的,开机EFI完成自检——启动boot option menu启动菜单中第一个项目中的引导程序——引导操作系统。
大多数的操作系统都可以读写GPT磁盘的,但是与能用GPT引导是另一回事。
不同操作系统使用GPT的情况都是不同的,Mac在创建GPT磁盘时都会在LBA40扇区开始分209MB出来作为EFI系统分区。微软则会有一个LBA2048开始的100MB EFI系统分区和128MB的MSR保留分区。

文件系统:
分区表是记录着硬盘分区的大小和位置的,每个分区都需要有一个文件系统,不然无法写入数据。文件系统就像是在分区里的目录,这个目录记录着文件的大小和位置。文件系统是根据单元来储存文件的,单元也叫做簇,每个单元由一组扇区组成的,例如NTFS可将单元设定为4KB即8个扇区大小。假设4KB一个单元的文件系统要储存一个5KB的文件,那么就要使用两个单元来存储这个文件了,而且第二个单元闲置的3KB无法使用。大的单元读写的速度较快但是占用空间较大,小的单元比较节省空间,但是读写慢。
删除文件其实只是把文件系统目录里相应的项目标记为空项,下次同一个位置写入文件的时候则直接复写或删写(机械磁盘是复写,固态硬盘是删除后再写)。对某个分区进行快速格式化也是一个道理,把文件系统删除,然后写入新的文件系统,这个新的文件系统将分区内所有扇区都标为空项,实际磁盘上的数据还是存在的,只是很难提取而已。
常见的文件系统有:Fat,NTFS,HFS+,exFAT。一般说某某格式的分区是其实就是说使用了某个文件系统的分区。
如果把磁盘当成是一个图书馆的话,分区表就是记录每个书架的位置,分类,大小的目录;分区就是一个一个的书架;文件系统就是书架的目录,记录着书架上放了那些书,放在哪里,这本书有多少内容。

EFI系统分区:
一般用OS X的磁盘工具创建一个GUID分区表磁盘后,系统都会创建一个209MB的隐藏系统分区,这个分区是要来保存引导程序,一些驱动什么的。这个分区的位置是从LBA40开始到LBA409639结束。而在win里看到的GPT保护分区是从LBA1开始到LBA409639结束,如果把这个GPT保护分区删除了的话,那么OS X将不能被引导。因为LBA1实际上是记录着GPT的头,LBA2往后到LBA39是记录着分区表。。EFI分区是使用Fat32文件系统的。
在win里看到EFI系统分区的话就证明这个磁盘是GPT的;如果看到的是GPT保护分区,那么这个磁盘是混合分区表的。EFI系统分区和GPT保护分区是存在区别的,前者的磁盘是纯GPT的,后者是混合分区表磁盘。

混合分区表:
GPT硬盘里的MBR扇区(LBA0)只记录着一个特殊的分区和结束代码。装在上面的系统是无法用BIOS引导的。OS X能创建一种叫做混合分区表的磁盘,就是这个硬盘可以同时使用MBR分区表和GUID分区表。根据启动的方式来选择分区表。
当OS X的磁盘工具在GPT磁盘上创建一个Fat32分区后,混合分区表会被创建,磁盘LBA1——LBA409639会被写入MBR分区表里作为第一个分区,标识为GPT保护分区,然后根据GUID分区表的项目分区别复制到MBR分区表,直到MBR分区表里的分区达到4个。当BootCamp模拟BIOS启动后就会加载这个MBR到内存。
win自带的磁盘工具是无法对混合分区进行管理的,所以别做任何无意义的尝试。
OS X里有一个叫做gdisk的磁盘工具可以对GPT,混合分区表的磁盘进行管理,可以下载一个来学习一下使用,如备份分区表,恢复分区表之类的。
当win插入一个混合分区表的磁盘时(非系统盘),第一个分区会是“”GPT保护分区“,这个分区保护着GPT的头和分区表。而当win的安装程序遇到混合分区表磁盘时它会优先使用MBR分区表,即使你用的是EFI启动的win安装程序。

GPT保护分区:
很多人将EFI系统分区和GPT保护分区搞混了。最简单的理解方式是,EFI系统分区是GPT磁盘的标志,GPT保护分区是混合分区表磁盘的标志。GPT磁盘的LBA0即MBR扇区记录着一个未知分区格式让不能读写GPT磁盘的操作系统不能识别,从而起到保护作用,一般这个扇区也叫做MBR protect。LBA1是GPT磁盘的头,LBA2开始是GPT磁盘的分区表。创建混合分区表实际上是为GPT磁盘创建MBR分区表,系统先将LBA1-LBA409639包含的扇区记录在MBR分区表的第一个位置上,这些扇区覆盖了GUID分区表和EFI系统分区。win是无法挂载这个GPT保护分区的,而且也无法对这个分区进行对写,从而起到保护作用。之所以叫做GPT保护分区,因为它保护着磁盘上的GUID分区表。








评分

参与人数 1下载分 +10 收起 理由
付吕剑武 + 10 赞一个!

查看全部评分

2#
发表于 2015-12-14 22:05:01 | 只看该作者 来自: 河南信阳 来自 河南信阳
回复 支持 反对

使用道具 举报

3#
发表于 2015-12-14 23:32:38 | 只看该作者 来自: 上海 来自 上海
一目了然,平时还真没有仔细去研究这个,有空要仔细瞧瞧。。。

回复 支持 反对

使用道具 举报

4#
发表于 2017-1-23 09:53:29 | 只看该作者 来自: 浙江嘉兴 来自 浙江嘉兴
不错不错很好的,解释的比较清楚

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长提醒 上一条 /1 下一条

快速回复 返回顶部 返回列表
附近
店铺
微信扫码查看附近店铺
维修
报价
扫码查看手机版报价
信号元
件查询
点位图


芯片搜索

快速回复