引导扇区真的只是驱动器的起始部分?

分享于 

5分钟阅读

电脑

  繁體 雙語

问题:

首先,我假设驱动器和/或者分区有一个从开始到结束的线性地址。 这必须是一个例子,或者 dd 类似于的程序不能作为复制机制。

引导扇区几乎总是只在这个 array 字节中地址 0? 我想这取决于那个驱动器上的文件系统?

很抱歉,我对这些低级的事情并不了解,我想学习 !


回答 1:

是的,引导扇区始终处于MBR的第 0扇区。 硬盘分为 512个字节,但是 4 TB+驱动器开始使用 4096字节扇区。

你必须读或者写整个扇区。

现在,逻辑块分配的逻辑块分配具有从 0到驱动器容量的标准扩展。

古人硬盘实际上使用圆柱。磁头和扇区。 每个头部拥有如此多的扇区,每个气缸都拥有如此多的头。

文件系统不是从第 0扇区开始的,而是分区表指示分区的开始,因这里文件系统不起作用。

rx已经开始替换 MBR,因为MBR有约 2.2个s的限制,并且表示了 4个主要分区的复杂方式。 你需要逻辑分区,每个逻辑分区可以包含许多分区。

GPT已经完成了许多复杂性,更新和简化了一些事情。

这里有更多细节。

https://en.wikipedia.org/wiki/GUID_Partition_Table


回答 2:

首先,我们需要指定使用的分区方案。 pc最典型的是 MBR,它与磁盘的第一个块共享名称( 逻辑块地址 #0): )。 主引导记录。

主引导记录包含最大 446字节引导代码,主分区的分区表( 每个分区只有 16字节) 和引导签名( 2字节)。

传统上,MBR引导代码只是标识活动主分区,加载该分区( 有时称为分区引导记录,或者)的第一块并执行它。 将包含一个operating-system-specific引导程序。 但是现代的装载器,像Linux的GRUB或者一些完整的磁盘加密解决方案,可能会更加复杂。

在旧磁盘中,当 Cylinder/Head/Sector 几何值实际上有一些实际意义时,第一个磁盘的首头为MBR块保留: 惯例是在轨迹开始时启动每个分区,以便跟踪 #0 拥有MBR的第一个块,整个轨道被跳过,而第一个分区将在轨道 #1 处启动。 因这里,在更高级的引导程序使用后,可以使用跟踪 #0 上的路径。 在mbr分区磁盘上,GRUB引导程序通常在它的中至少嵌入一些部分。

在现代磁盘上,LBA寻址是规范的,建立了一个新的惯例: 第一个分区通常从逻辑块地址 #2048, 开始,或者从磁盘的开始处精确地开始 1. 这将确保即使磁盘在某些power-of-two组内处理块,第一个分区的开始仍将与这里块组的开头对齐。 对于RAID阵列和其他大型存储系统,例如数据对齐可能是获得存储性能的重要组成部分。 作为副作用,这种新约定可能会导致MBR块与第一个分区的开始之间的更多"已经废弃"空间。

在 2011年,当英特尔Sandy体系结构发布时,引入了新的UEFI固件,最终替代了传统的BIOS架构。 伴随着它,出现了一个新的分区方案: GUID分区表或者。 由于MBR的最大尺寸限制为 2 tb ( 假定标准块大小为 512字节),因此需要一个新的方案。

GPT分区方案实际上包含一个"保护 mbr": 这个磁盘已经完全分配给你不知道的分区类型,不要触摸"只理解MBR样式分区的系统 that。 从 LBA #1 开始,然后是实际的分区表数据。 它允许分区大小增长到zettabytes的范围- 在可以预见的未来应该是足够的。

GPT分区方案消除了MBR的限制:

  • 使用 GPT,每个磁盘上的主分区的限制不再超过 4个。
  • primary/extended/logical 分区的mbr分区分区不再存在: 所有分区在这种意义上都相等。

UEFI固件还指定了一个新的。 引导装载程序在磁盘上不再有固定位置。 相反,固件将有一个从 FAT32-type 文件系统 读取文件的能力,而引导程序只是一个标记为特定分区类型的。 这种分区称为 ESP,或者EFI系统分区。 (。是从。系统开发的,主要是从。系统开发的,从那里继承了引导器分区的名称和结构。



BOO  引导  Drive  Sector