磁盘分区

磁盘:可以被分区成多个分区槽(partition)
以Windows来看,磁盘可以被分区为 C: , D: , E: 槽。
C、D、E就是分区槽。
而Linux都是以文件的型态存在。

磁盘结构

磁盘,它是由一个个盘片组成的。首先从单个盘片结构讲起。
图中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之为一个扇区(绿色部分)。扇区是磁盘的最小组成单元,通常是512字节(512bytes 或 4Kbytes)。 见下图。
在这里插入图片描述
图1

硬盘通常由一个或多个盘片构成,而且每个面都被划分为数目相等的磁道,并从外缘开始编号(即最边缘的磁道为0磁道,往里依次累加)。
如此磁盘中具有相同编号的磁道会形成一个圆柱,此圆柱称为磁盘的柱面,磁柱。通常是文件系统的最小单位,也就是分区槽的最小单位。
磁盘的柱面数与一个盘面上的磁道数是相等的。
一个盘片有上下两个盘面,均是可读写的。
每个盘面都有一个磁头,因此,盘面数等于总的磁头数。
在这里插入图片描述
图2

磁盘存储容量

存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数
例:
图2中,硬盘有3个盘片,每个盘片有两个盘面(盘面数等于磁头数),总共6个磁头,7个柱面(即每个盘面的磁道数),每个磁道被划分为12个扇区,所以此磁盘的容量为6712*512字节。

早期硬盘第一个扇区里面含有的重要信息称为 MBR(Master Boot Record)格式。
新的磁盘分区格式,称为 GPT(GUID partition)

分区表:对硬盘进行分区,才可以被使用。

MSDOS(MBR)分区表格式与限制

MBR(Master Boot Record,主引导记录)
主引导记录放在磁盘的第一个扇区。这个扇区通常是512bytes的大小。(旧磁盘扇区都是512bytes)。
因这一扇区中,引导代码占有绝大部分的空间,故而习惯将该扇区称为MBR扇区(简称MBR。)
该扇区作为管理整个磁盘空间的一个特殊空间,它不属于磁盘上的任何分区,因而分区空间内的格式化命令不能清除主引导记录的任何信息。

主引导扇区由三个部分组成(共占用512bytes):

第一部分主引导程序(即主引导记录),占446字节
可以安装开机管理程序的地方。
用于硬盘启动时,将系统控制转移给用户指定的,并在分区表中登记了的某个操作系统。
MBR的内容是在硬盘分区时由分区软件写入该扇区的。MBR不属于任何一个操作系统,不随操作系统的不同而不同。
具有公共引导的特性。
第二部分分区表(Partition Table),占64个字节
记录整个硬盘的分区状态。
由于分区表仅有64个字节,而每个分区表项要占用16个字节,因此最多仅能有四组分区。
每个分区表项记录了该区段的起始与结束的磁柱号码。
第三部分结束标志,占2个字节

补充:
每个分区表项占用16个字节,这16个字节中存有活动状态标志、文件系统标识、起止柱面号、磁头号、扇区号、隐含扇区数目(4个字节)、分区总扇区数目(4个字节)等内容。由于MBR扇区只有64bytes用于分区表,所以只能记录4个分区的信息。这就是硬盘主分区数目不能超过4个的原因。
每个分区表项表面了该区段的起始和结束的磁柱号码。

主引导记录的结构图:
在这里插入图片描述
举例:
将磁盘以长条形来看,然后将磁柱以柱形图来看。(假定该磁盘只有400个磁柱,共分区成为四个分区槽)
在这里插入图片描述
P1表示第一个分区槽所在为第 1 到 100 号磁柱的范围。
P2表示第一个分区槽所在为第 101 到 200 号磁柱的范围。
P3表示第一个分区槽所在为第 201 到 300 号磁柱的范围。
P4表示第一个分区槽所在为第 301 到 400 号磁柱的范围。
当操作系统为Windows系统时,那么第 1 到 4 个分区槽的代号就是C,D,E,F。
当有数据要写入F盘时,数据也就是写入该磁盘的第 301~400 号磁柱之间的意思。

由上,可以总结几个重点信息:

1.其实所谓的 【分区】 只是针对那个 64字节(Bytes)的分区表进行设定而已。
2.硬盘默认的分区表仅能写入四组分区信息。
3.这四组分区信息,称为 主要(Primary)或 延伸(Extended)分区槽。
4.分区槽的最小单位通常称为 磁柱(cylinder)。
5.当系统要写入磁盘时,一定会参考磁盘分区表,才能针对某个分区槽进行数据的处理。

为啥要分区?

1.数据的安全性
每个分区槽之间的数据是分开的。
所以,当你需要将某个分区槽的数据重整时,例如将计算机Windows中的C槽重新安装一次系统时,可以将其他重要数据移动到其他分区槽。例如将桌面数据,邮件等移动到D槽去,那么C槽重新装系统以后并不会影响D槽。
善用分区槽,可以让数据更安全。

2.系统的效能考虑
由于分区槽将数据集中在某个磁柱的区段,例如上图中的第一个分区槽位于磁柱号码 1~100号。
因此,当有数据要读取自该分区槽时,磁盘只会搜寻前面 1~100 的磁柱范围。由于数据集中了,将有助于数据读取的速度与效能。

扩展分区

由于主引导扇区总计只能存储四个分区的数据,也就是说,一块物理硬盘只能划分为4个逻辑磁盘。在具体的应用中,4个逻辑磁盘往往不能满足实际需求。为了建立更多的逻辑磁盘供操作系统使用,引入了扩展分区和逻辑分区,并把原来的分区类型称为主分区。
把其中一个主分区命名为扩展分区(只是命名),然后在这个扩展分区上进行切割。在扩展分区内切割出的就被称为逻辑分区。逻辑分区用链接进行链接。可以创建多个逻辑分区,而创建的这些逻辑分区都被称为扩展分区。
可以使用主分区和逻辑分区存储数据,但是不能用扩展分区存储,因为扩展分区是对逻辑分区的总称,即只是一种称呼。

主分区、扩展分区和逻辑分区的特性:

1.主分区与扩展分区最多可以有四个(硬盘的限制)
2.扩展分区最多只能有一个(操作系统的限制)
3.逻辑分区是由扩展分区持续切割出来的分区槽
4.扩展分区不能被格式化
5.逻辑分区的数量依操作系统而不同。
分区是以磁柱为单位的【连续】磁盘空间。
因此,当使用到扩展分区,建议将最后一个主分区设为扩展分区。在以逻辑分区的方式去分配硬盘的剩余容量。

由于每组分区表仅有16bytes而已,因此能够记录的信息是相当有限的。
MBR分区表的限制:
1.操作系统无法抓取到2.2T以上的磁盘容量。
2.MBR仅有一个区块(整个硬盘的第一个扇区),若第一个扇区的物理实体坏掉了,则这个硬盘大概就没有用了。
3.MBR内存放开机管理程序的区块仅446bytes,无法容纳较多的程序代码。

这个2.2TB限制的现象在早期并不会很严重,但是近年来,硬盘厂商推出的磁盘容量越来越高,假如使用MBR分区的方式,则需要不断的一个一个分下去,因此,后来就有了GPT磁盘分区的格式出现。

补充:
在这里插入图片描述
每个分区表仅有16字节。 其中有4个字节为分区扇区总数。
因此,假定硬盘的扇区存储大小为 512bytes
则:
4个字节 = 2的32次方 (这里的4个字节就相当于对扇区数计数,总共有多少个扇区,二进制)
2^32 * 512 bytes = 2TB。 (表示分区的大小最大为2TB)
超过2TB以后,分区的起始位置也就无法表示了。
MBR分区方案主分区数目不能超过4个,为了支持更多的分区,引入了扩展分区和逻辑分区的概念。但每个分区项仍用16个字节存储。
因此当硬盘容量大于 8TB 以后,需要不断的分区下去。

参考资料:
《鸟哥的Linux私房菜-基础篇》 第四版
https://www.cnblogs.com/linux-xin/p/8144663.html
https://www.cnblogs.com/joydinghappy/articles/2511948.html

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值