admin管理员组

文章数量:1530950

2024年1月12日发(作者:)

硬盘的DOS管理结构

1.磁道,扇区,柱面和磁头数

硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等。每个盘片有两面,都可记录信息。盘片被分成许多扇形的区域,每个区域叫一个扇区,每个扇区可存储128×2的N次方(N=0.1.2.3)字节信息。在DOS中每扇区是128×2的2次方=512字节,盘片表面上以盘片中心为圆心,不同半径的同心圆称为磁道。硬盘中,不同盘片相同半径的磁道所组成的圆柱称为柱面。磁道与柱面都是表示不同半径的圆,在许多场合,磁道和柱面可以互换使用,我们知道,每个磁盘有两个面,每个面都有一个磁头,习惯用磁头号来区分。扇区,磁道(或柱面)和磁头数构成了硬盘结构的基本参数,帮这些参数可以得到硬盘的容量,基计算公式为:

存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数

要点:(1)硬盘有数个盘片,每盘片两个面,每个面一个磁头

(2)盘片被划分为多个扇形区域即扇区

(3)同一盘片不同半径的同心圆为磁道

(4)不同盘片相同半径构成的圆柱面即柱面

(5)公式: 存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数

(6)信息记录可表示为:××磁道(柱面),××磁头,××扇区

2.簇

“簇”是DOS进行分配的最小单位。当创建一个很小的文件时,如是一个字节,则它在磁盘上并不是只占一个字节的空间,而是占有整个一簇。DOS视不同的存储介质(如软盘,硬盘),不同容量的硬盘,簇的大小也不一样。簇的大小可在称为磁盘参数块(BPB)中获取。簇的概念仅适用于数据区。

本点:(1)“簇”是DOS进行分配的最小单位。

(2)不同的存储介质,不同容量的硬盘,不同的DOS版本,簇的大小也不一样。

(3)簇的概念仅适用于数据区。

3.扇区编号定义:绝对扇区与DOS扇区

由前面介绍可知,我们可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域,或是说柱面/磁头/扇区与磁盘上每一个扇区有一一对应关系,通常DOS将“柱面/磁头/扇区”这样表示法称为“绝对扇区”表示法。但DOS不能直接使用绝对扇区进行磁盘上的信息管理,而是用所谓“相对扇区”或“DOS扇区”。“相对扇区”只是一个数字,如柱面140,磁头3,扇区4对应的相对扇区号为2757。该数字与绝对扇区“柱面/磁头/扇区”具有一一对应关系。当使用相对扇区编号时,DOS是从柱面0,磁头1,扇区1开始(注:柱面0,磁头0,扇区1没有DOS扇区编号,DOS下不能访问,只能调用BIOS访问),第一个 DOS扇区编号为0,该磁道上剩余的扇区编号为1到16(设每磁道17个扇区),然后是磁头号为2,柱面为0的17个扇区,形成的DOS扇区号从17到 33。直到该柱面的所有磁头。然后再移到柱面1,磁头1,扇区1继续进行DOS扇区的编号,即按扇区号,

磁头号,柱面号(磁道号)增长的顺序连续地分配 DOS扇区号。

公式:记DH--第一个DOS扇区的磁头号

DC--第一个DOS扇区的柱面号

DS--第一个DOS扇区的扇区号

NS--每磁道扇区数

NH--磁盘总的磁头数

则某扇区(柱面C,磁头H,扇区S)的相对扇区号RS为:

RS=NH×NS×(C-DC)+NS×(H-DH)+(S-DS)

若已知RS,DC,DH,DS,NS和NH则

S=(RS MOD NS)+DS

H=((RS DIV NS)MOD NH)+DH

C=((RS DIV NS)DIV NH)+DC

要点:(1)以柱面/磁头/扇区表示的为绝对扇区又称物理磁盘地址

(2)单一数字表示的为相对扇区或DOS扇区,又称逻辑扇区号

(3)相对扇区与绝对扇区的转换公式

磁盘区域的划分

格式化好的硬盘,整个磁盘按所记录数据的作用不同可分为主引导记录(MBR:Main Boot Record),Dos引导记录(DBR:Dos Boot Record),文件分配表(FAT:File Assign Table),根目录(BD:Boot Directory)和数据区。前5个重要信息在磁盘的外磁道上,原因是外圈周长总大于内圈周长,也即外圈存储密度要小些,可靠性高些。

要点:(1)整个硬盘可分为MBR,DBR,FAT,BD和数据区。

(2)MBR,DBR,FAT,和BD位于磁盘外道。

MBR位于硬盘第一个物理扇区(绝对扇区)柱面0,磁头0,扇区1处。由于DOS是由柱面0,磁头1,扇区1开始,故MBR不属于DOS扇区,DOS不能直接访问。MBR中包含硬盘的主引导程序和硬盘分区表。分区表有4个分区记录区。记录区就是记录有关分区信息的一张表。它从主引导记录偏移地址

01BEH处连续存放,每个分区记录区占16个字节。

分区表的格式

分区表项的偏移 意义 占用字节数

00 引导指示符 1B

01 分区引导记录的磁头号 1B

02 分区引导记录的扇区和柱面号 2B

04 系统指示符 1B

05 分区结束磁头号 1B

06 分区结束扇区和柱面号 2B

08 分区前面的扇区数 4B

0C 分区中总的扇区数 4B

4个分区中只能有1个活跃分区,即C盘。标志符是80H在分区表的第一个字节处。若是00H则表示非活跃分区。例如:

80 01 01 00 0B FE 3F 81 3F 00 00 00 C3 DD 1F 00

00 00 01 82 05 FE BF 0C 02 DE 1F 00 0E 90 61 00

00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

要点:(1)MBR位于硬盘第一个物理扇区柱面0,磁头0,扇区1处。不属于DOS扇区,

(2)主引导记录分为硬盘的主引导程序和硬盘分区表。

DBR位于柱面0,磁头1,扇区1,即逻辑扇区0。DBR分为两部分:DOS引导程序和BPB(BIOS参数块)。其中DOS引导程序完成DOS系统文件(,)的定位与装载,而BPB用来描述本DOS分区的磁盘信息,BPB位于DBR偏移0BH处,共13字节。它包含逻辑格式化时使用的参数,可供DOS计算磁盘上的文件分配表,目录区和数据区的起始地址,BPB之后三个字提供物理格式化(低格)时采用的一些参数。引导程序或设备驱动程序根据这些信息将磁盘逻辑地址(DOS扇区号)转换成物理地址(绝对扇区号)。BPB格式

序号 偏移地址 意义

1 03H-0AH OEM号

2 0BH-0CH 每扇区字节数

3 0DH 每簇扇区数

4 0EH-0FH 保留扇区数

5 10H FAT备份数

6 11H-12H 根目录项数

7 13H-14H 磁盘总扇区数

8 15H 描述介质

9 16H-17H 每FAT扇区数

10 18H-19H 每磁道扇区数

11 1AH-1BH 磁头数

12 1CH-1FH 特殊隐含扇区数

13 20H-23H 总扇区数

14 24H-25H 物理驱动器数

15 26H 扩展引导签证

16 27H-2AH 卷系列号

17 2BH-35H 卷标号

18 36H-3DH 文件系统号

DOS引导记录公式:

文件分配表≡保留扇区数

根目录≡保留扇区数+FAT的个数×每个FAT的扇区数

数据区≡根目录逻辑扇区号+(32×根目录中目录项数+(每扇区字节数-1))DIV每扇区字节数

绝对扇区号≡逻辑扇区号+隐含扇区数

扇区号≡(绝对扇区号MOD每磁道扇区数)+1

磁头号≡(绝对扇区号DIV每磁道扇区数)MOD磁头数

磁道号≡(绝对扇区号DIV每磁道扇区数)DIV磁头数

要点:(1)DBR位于柱面0,磁头1,扇区1,其逻辑扇区号为0

(2)DBR包含DOS引导程序和BPB。

(3)BPB十分重要,由此可算出逻辑地址与物理地址。

7.文件分配表

文件分配表是DOS文件组织结构的主要组成部分。我们知道DOS进行分配的最基本单位是簇。文件分配表是反映硬盘上所有簇的使用情况,通过查文件分配表可以得知任一簇的使用情况。DOS在给一个文件分配空间时总先扫描FAT,找到第一个可用簇,将该空间分配给文件,并将该簇的簇号填到目录的相应段内。即形成了“簇号链”。FAT就是记录文件簇号的一张表。FAT的头两个域为保留域,对FAT12来说是3个字节,FAT来说是4个字节。其中头一个字节是用来描述介质的,其余字节为FFH 。介质格式与BPB相同。

第一个字节的8位意义:

7 6 5 4 3 2 1 0

└─────-┘ │ │ │┌0非双面

置1 │ │ └┤

│ │ └1双面

│ │┌0不是8扇区

│ └┤

│ └1是8扇区

│┌0不是可换的

└┤

└1是可换的

FAT结构含义

FAT12 FAT16 意义

000H 0000H 可用

FF0H-FF6H FFF0H-FFF6H 保留

FF7H FFF7H 坏

FF8H-FFFH FFF8H-FFFFH 文件最后一个簇

×××H ××××H 文件下一个簇

对于FAT16,簇号×2作偏移地址,从FAT中取出一字即为FAT中的域。

逻辑扇区号=数据区起始逻辑扇区号+(簇号-2)×每簇扇区数

簇号=(逻辑扇区号-数据区起始逻辑扇区号)DIV每簇扇区数+2

要点:(1)FAT反映硬盘上所有簇的使用情况,它记录了文件在硬盘中具体位置(簇)。

(2)文件第一个簇号(在目录表中)和FAT的该文件的簇号串起来形成文件的“簇号链”,恢复被破坏的文件就是根

据这条链。

(3)由簇号可算逻辑扇区号,反之,由逻辑扇区号也可以算出簇号,公式如上。

(4)FAT位于DBR之后,其DOS扇区号从1开始。

8.文件目录

文件目录是DOS文件组织结构的又一重要组成部分。文件目录分为两类:根目录,子目录。根目录有一个,子目录可以有多个。子目录下还可以有子目录,

从而形成“树状”的文件目录结构。子目录其实是一种特殊的文件,DOS为目录项分配32字节。目录项分为三类:文件,子目录(其内容是许多目录项),卷标(只能在根目录,只有一个。目录项中有文件(或子目录,或卷标)的名字,扩展名,属性,生成或最后修改日期,时间,开始簇号,及文件大小。

目录项的格式

字节偏移 意义 占字节数

00H 文件名 8B

08H 扩展名 3B

0BH 文件属性 1B

0CH 保留 10B

16H 时间 2B

18H 日期 2B

1AH 开始簇号 2B

1CH 文件长度 4B

目录项文件名区域中第一个字节还有特殊的意义:00H代表未使用

05H代表实际名为E5H

EBH代表此文件已被删除

目录项属性区域的这个字节各个位的意义如下: 7 6 5 4 3 2 1

未 修 修 子 卷 系 隐

用 改 改 目 标 统 藏

标 标 录 属 属

志 志 性 性

注意:WINDOWS的长文件名使用了上表中所说的“保留”这片区域。

要点:(1)文件目录是记录所有文件,子目录名,扩展名属性,建立或删除最后修改日期。文件开始簇号及文件长度的一张

登记表.

(2)DOS中DIR列出的内容训是根据文件目录表得到的。

(3)文件起始簇号填在文件目录中,其余簇都填在FAT中上一簇的位置上。

9.物理驱动器与逻辑驱动器

物理驱动器指实际安装的驱动器。

逻辑驱动器是对物理驱动器格式化后产生的。

要点:同上。

=================================================================================

其实细节之外的最基本东西就是:磁道,扇区,柱面和磁头数

为何更改为 4096 字节扇区?

如果您熟悉磁盘结构,就知道磁盘是被分解成扇区 的,大小通常是 512 字节;所有读写操作均在成倍大小的扇区中进行。仔细查看,就会发现硬盘事实上在扇区之间包括大量额外数据,这些额外字节由磁盘固件使用,以检测和纠正每个扇区内的错误。随着硬盘变得越来越大,越来越多的数据需要存储在磁盘的每一单位面积上,导致更多低级别错误,从而增加了固件纠错功能的负担。

解决该问题的一个方法是将扇区大小从 512 字节增加为更大的值,以使用功能更强大的纠错算法。这些算法可使每个字节使用较少的数据,从而比使用 512

字节扇区能纠正更多严重问题。因此,更改为较大尺寸的扇区有两个实际好处:提高可靠性且增加磁盘容量 — 至少从理论上讲是这样。

不同于增加的显示器大小或提高的中央处理单元(CPU)速度,对终端用户的现实获益可能没有这么明显。不过,专用于奇偶检验的空间减少了,可能加快较大磁盘的引入或提高磁盘可靠性。

遗憾的是,关于 512 字节扇区的假设潜藏在整个软件链中,在基本输入/输出系统(BIOS)、引导装载程序、操作系统内核、文件系统代码和磁盘工具等工具中。尽管向 4096 字节扇区的转变已经酝酿了多年,有些工具仍未做好准备。Microsoft® Windows® XP 经常被提出有故障隐患,即使在 Linux 中,有些问题也只是暂时得到纠正。

为帮助实现这种过渡,带 4096 字节分区的第一批磁盘将每个物理 扇区转换成

8 个 512 字节的逻辑 扇区。对于 BIOS、操作系统和所有磁盘工具,磁盘看起来有 512 字节扇区,但实际上底层物理扇区大小是 4096 字节。Western

Digital 是第一家生产这种磁盘的制造商,它使用术语 Advanced Format 来代表带 4096 字节物理扇区且向 512 字节逻辑扇区转换的磁盘。本文对 Western

Digital 的磁盘和使用类似技术的其他制造商的磁盘都使用同一术语。

回页首

为何有性能影响?

遗憾的是,在固件中改变表面扇区大小会降低性能。要了解个中原因,首先应了解文件系统数据结构以及如何进行磁盘分区。

最新的文件系统使用 4096 字节或更大尺寸的数据结构。因此,大部分磁盘 I/O

操作占用成倍数量的大小。想一下,当 Linux 想在一个带 4096 字节扇区的新磁盘上读写这些数据结构时,会发生什么事情。如果文件系统数据结构正好与底层物理分区大小一致,对 4096 字节数据结构的读写会产生对单一扇区的读写。硬盘的固件不需要做任何特别的事;但是当文件系统数据结构与底层物理扇区不完全一致时,读写操作必须使用两个物理扇区。对于读操作,这基本上不会花费很多额外时间,因为磁盘上的读/写头极可能连续通过两个扇区,且固件可丢弃它不需要的数据。另一方面,对不一致数据结构的写操作需要磁盘的固件首先读取两个扇区,修改两个扇区的分区,然后写两个扇区。该操作所需时间比 4096

字节占用一个扇区时所需时间多。因此,性能下降。

如何判断数据结构是否得到合理对齐? 大多数文件系统将其数据结构与包含其本身的分区开头对齐。因此,如果一个分区起始于一个 4096 字节(8 个扇区)边界,则表示它得到合理对齐。遗憾的是,直到最近,大多数 Linux 分区工具还没有创建以这种方式对齐的分区。下一小节 对齐分区,描述如何使用普通

Linux 分区软件对齐分区。

回页首

基准测试结果

您可能不了解合理的分区对齐有多重要。为此,我们对已对齐和未对齐分区以及若干 Linux 文件系统使用了一个 1TB Western Digital WD-10EARS Advanced

Format 驱动。磁盘是通过全局唯一标识符(GUID)Partition Table (GPT) 系统进行分区的,其中已对齐的分区起始于逻辑扇区 40,而未对齐的分区起始于逻辑扇区 34(使用 GPT 磁盘与默认大小的分区表时的第一个可用扇区)。受测试的文件系统是 ext3fs、ext4fs、ReiserFS(第 3 版)、JFS、XFS 和 Btrfs。计算机运行一个 64 比特 2.6.32.3 Linux 内核。

一个脚本执行了一系列磁盘 I/O 操作,包括创建一个新文件系统、提取一个未压缩的 Linux 内核原始码到测试驱动上、复制原始码到驱动、读取测试驱动上刚才未压缩的文件、从驱动上读取原始码、删除 Linux 内核目录。源 Linux 内核原始码存储在另一个磁盘上,对于读测试,输出指向 /dev/null。在每个写测试之后,测试磁盘被卸载,以确保在 Linux 的磁盘缓存中没有操作。所报告的数字包括执行卸载操作所需的时间。内核原始码的大小是 365MB — 远远大于磁盘 64MB 的缓存。每个测试序列对每个文件系统运行 6 次,对合理对齐的分区运行 3 次,对未合理对齐的分区运行 3 次。隔次操作的变动很小。用平均未对齐时间除以平均对齐时间所得的值来确定所应用的不合理对齐对性能的影响程度。大于 1.00 的值表示不合理对齐产生一些性能损失。

许多测试产生适度的损失。针对文件系统创建的值介于 0.96(对于 XFS)到

7.94(对于 ReiserFS)之间,平均值为 2.79。由于文件系统不常创建,所以该损失不是那么重要。读测试生成的值介于 0.95 到 1.25 之间,这表示速度损失不超过 25%,如图 1 中所示。值为 1.00 时表示没有损失;更高的值则意味着性能下降。

图 1. 使用未对齐分区的读性能损失

大型文件写性能也受到适度损失。这些值介于 1.10(对于 XFS 和 JFS)到

6.02(对于 ReiserFS)之间,平均值为 2.10。一般情况下该值较高都归咎于

ReiserFS 的敏感性。删除它之后,其余 5 个文件系统的平均值为 1.31。文件检测效果类似,从 1.04(对于 XFS)到 4.78(对于 JFS),平均值为 1.97。将 JFS 作为离群值删除之后,平均值变为 1.40。

小型文件创建操作会产生最大的写性能影响(提取内核原始码)。对原始码提取的影响范围为 1.04(对于 ext4fs)到 25.53(对于 ReiserFS),平均值为 10.9。该测试中第二大性能影响者是 XFS,值为 1.82。由于这些数字是未对齐性能与对齐性能之比,值为 10.9 时表示一个原始码提取在合理对齐的分区上需时 10

秒,而在未合理对齐的分区上需时 109 秒 — 一个巨大的差别!对于 XFS,值为 1.82 时表示这个 10 秒钟的操作在未合理对齐的分区上需要花 18.2 秒的时间。

图 2 总结了所有文件系统的这些写性能损失。与前面相同,值为 1.00 时表示没有性能损失;更高的值表示性能下降。

图 2. 使用未对齐分区的写性能损失

注意,这些测试不反映文件系统的总体性能。例如,您不应该因为 ReiserFS 产生一些最大的性能差异,就认为它对性能的影响不好。不过,ReiserFS 对不合理的对齐比其他文件系统更敏感。

除了在分区中对文件系统运行测试之外,在一个 LVM 配置中还对文件系统执行了抽样检查,不管 LVM 分区是否经合理对齐。这些结果类似于原始分区结果。

实际情况是,到底这一切意味着什么?您应该首先确定您磁盘的物理扇区大小。如果您有 Advanced Format 驱动,就应该合理对齐您的分区。

回页首

确定物理扇区大小

从理论上,Linux 内核应该在 /sys/block/sdX/queue/physical_block_size

pseudo-file 中返回物理扇区大小相关信息,在

/sys/block/sdX/queue/logical_block_size pseudo-file 中返回逻辑扇区大小相关信息,其中 sdX 是您设备的节点名称(通常为 sda、sdb 等)。但是在实践中,物理块大小信息是假的,至少对于第一代 Western Digital Advanced Format 驱动是这样的。遗憾的是,这表示磁盘工具不能合理检测这种磁盘的存在。

那么从实际来看,您必须在制造商的 Web 站点或通过其他方式查找您的驱动的规格。/sys/block/sdX/device/model 伪文件含有设备型号,因此您可以在这里查找,然后与制造商核对。

对于目前的第一代 Advanced Format 驱动,Western Digital 在驱动上贴有标签,以表明它们是 Advanced Format 驱动。遗憾的是,这些标签表示,只有

Windows XP 上的这些驱动有问题。以上基准测试结果显示,Linux 用户必须非常谨慎地对待这些驱动。

回页首

对齐分区

对齐 RAID 分区

独立磁盘冗余阵列(RAID)第 5 和 6 级含有与 Advanced Format 驱动类似的对齐问题,不过原因与用于创建阵列的数据带大小有关,通常为 16KB 到

256KB。使用 RAID 阵列时,您应当在成倍大小的数据带上对齐分区。作为一种新兴标准,2048 扇区(1024KB)上的默认对齐对所有常见尺寸的 RAID 条带都很适用。

已发布的测试结果表明,未合理对齐的性能损失大约为 5-30%,比未合理对齐

Advanced Format 驱动所造成的性能损失小多了。从 Advanced Format 磁盘上创建 RAID 阵列时,您不需要采取额外步骤。因为 RAID 对齐值是

Advanced Format 驱动所需的 4096 字节对齐的倍数,如果您为带 512 字节物理扇区的 RAID 磁盘阵列对齐分区,两种技术便都能实现。

当前的 Western Digital 驱动包括一个跳线,可用于设置 Windows XP 兼容性。该跳线能够将扇区编号移动 1 位,因而在真实的逻辑扇区 64 上置入一个分区,计算机将其识别为扇区 63 的开头(对于柱面对齐)。这是解决 Windows 中常见情形(即使用跨整个驱动的单一分区的扇区对齐问题)的一种应急方法。遗憾的是,如果您创建多个分区,除了第一个分区之外,所有其他分区可能都不会被对齐。因此,您几乎可以肯定不能 使用该跳线;二是使用您的 Linux 分区软件创建合理对齐的分区。

Master Boot Record (MBR) 的三个系列和 GPT 分区工具可供 Linux 使用,且每个工具都有其自己对齐分区的方式。如果您有一个 Advanced Format 驱动,那么您最好的选择就是运行最新的 Linux 分区软件。

提示:如果您想双重启动需要柱面对齐的 Linux 和一个旧版操作系统,尝试在成倍的 8 个柱面上调整所有分区的开头。这转化成用于最优磁盘性能的 8 扇区对齐和用于旧版操作系统的柱面对齐。

fdisk 系列

fdisk 系列是大多数 util-linux-ng 分发包附带的一部分,支持直接编辑

MBR 数据结构,但它不能创建或修改文件系统。通过 util-linux-ng 2.17,fdisk 对分区的 8 扇区对齐不提供任何直接支持。通过 2.17.2 及其以上版本(我写本文时是最新版本),默认对齐仍然是基于柱面的。

不过,您可以使用任何版本的 fdisk 合理对齐分区。为此,您应该在主菜单输入 u,将默认单元从柱面更改为扇区。然后输入初始扇区值,应为 8 的倍数。在理论上,为实现合理对齐,您可以将第一个分区的扇区数设为 8;但是,最好将第一个分区设置为 64 或更高的值,为 MBR 与第一个分区之间的未分配空间中的装载引导程序代码留出空间。Microsoft 面向 Windows Vista 和

Windows 7 的分区工具将第一个分区起始于扇区 2048,从跨平台角度来讲,这里是开始分区的安全地带。事实上,从 util-linux-ng 2.17.1 开始,当您通过在主菜单输入 c 来禁用 DOS 兼容性模式时,这就是默认设置。我建议保持该设置。

但是,要注意,fdisk 不自动对齐随后的分区。如果您指定以兆字节或更大字节为单位的分区大小,然后接受随后分区的默认值,随后的分区可能会被对齐,但这不一定。出于安全考虑,您不应检验以 8 的倍数为初始值的每个分区。

使用 fdisk 的另一种方法是通过 fdisk -H 224 -S 56 /dev/sda 启动它,这会更改 cylinder/head/sector (CHS) 几何参数,从而确保在将程序与柱面对齐时有合理的 4096 字节对齐,这也是默认情形。

libparted 库

libparted 库驱动支持文件系统操作的多个 Linux 分区工具。通过版本 2.1,文本模式 GNU Parted 程序(命令名 parted)仅对柱面边界的对齐提供支持。最好的方法可能是输入 unit s,将默认单元更改为扇区。然后您可以在扇区中手动输入分区起始点,并精确检验分区起始点。

版本 2.2 开始向一种对带 4096 物理扇区的磁盘更有用的策略转变。通过该版本,您可以指定 1M 的起始值,然后扇区将得到合理对齐。当您的分区没有合理对齐时,该版本还会发出警告。

使用 GUI GParted 程序时,您一定要取消选中 Create New Partition 中的

“Round to cylinders” 复选框,如图 3 所示。您必须设置与前一分区末端相关的分区的起始扇区,但是如果您从一个合理对齐的分区开始,这就都能解决。您可以显示一个分区的 Information 对话框,以了解其起始和结束扇区从绝对意义上讲是什么。

图 3. 使用 GParted 时取消选中 “Round to cylinders” 复选框(这里显示它处于选中状态,这是默认状态)

GPT fdisk 工具

GPT fdisk 工具仅在使用 GPT 磁盘时才有用。0.5.2 之前的版本不执行任何对齐,尽管您可以通过指定合适的起始扇区数来手动对齐分区。版本 0.5.2 以及

0.6.0 到 0.6.5 将所有分区的起始扇区调整为 8 扇区边界,不过这仅针对大磁盘(超过 800GB 的磁盘),而不适用于小磁盘。版本 0.6.6 为所有未分区磁盘引入一种 Windows 样式的 2048 扇区(1MB)对齐,并试图通过现有分区推断过去使用的磁盘对齐。

通过 0.5.2 及其后期版本,您可以通过专家菜单上的 l 选项手动调整对齐值。该选项将大量扇区作为一个选项。为实现对 Advanced Format 磁盘的合理对齐,将该值设为 8 或其倍数。验证选项(任何菜单上的 v)基于当前对齐值报告未合理对齐的任何分区。

回页首

前景

目前仅有少量 Advanced Format 硬驱模型可供使用。新闻报道表明,该技术从

2010 年开始将会扩展到来自所有主要制造商的更多驱动。可以想象得到,新模型会遭遇与第一代 Advanced Format 驱动不同的其他性能问题。

最后,制造商可能会丢弃 512 字节扇区这个构想,或提供跳线来支持用户选择是否使用该兼容性特性。如果您遇到一个带 4096 字节扇区、但可选择真实扇区大小的驱动,您可能希望使用它;不过,您需要注意一些警告。

正如之前所述,来自 BIOS 的软件可能包括关于硬盘扇区大小的假设。如果

BIOS 包含这样一个假设,那么您的计算机可能不会从一个含 4096 字节扇区且缺乏到 512 字节扇区的固件转换的磁盘上启动。自版本 2.2 起,对于除 512

字节扇区之外都属于试验性扇区的磁盘,在该磁盘上启动 GNU Parted 时,它自动显示一个支持该磁盘的警告。其他问题可能潜藏在对您很重要的软件中。使

用最新的软件可能会帮助您解决这些问题,例如可以将传统磁盘作为启动磁盘使用,将新技术磁盘仅作为数据磁盘使用(/dev/sdb 或更高)

本文标签: 扇区磁盘分区字节柱面