![背景](https://linux22.com/image/1381722/%E8%83%8C%E6%99%AF.png)
对于使用带有 SSD 的 Windows XP,受到推崇的手动对齐分区(或者使用例如 7 进行分区)。
背景
解释是,XP 默认对齐需要使用两个“磁盘操作”(一般来说)而不是一个,因为它是这样对齐分区的:
来源通过“Micron”
然后指南建议您使用diskpar.exe
偏移量128设置更好的分区对齐。例如这个:
问题
我不明白的是,如果如磁盘信息打印输出中所示每个磁道有 63 个扇区,那么两个磁道占用 126 个扇区,因此我猜想第三个磁道应该从偏移量 127 开始。
思维
我认为我可能会搞乱索引,这是我的想法。首先,我认为和SectorsPerTrack
都是offset
以 1 为基数的索引,因为前者只有作为这样的计数器才有意义,而后者应该告诉我我想要从哪个扇区开始计数。128 没有意义,因为我跳过 2*63 个扇区的扇区的计数值为 127。
因此,我断言 是以SectorsPerTrack
1 为基数进行索引的,但offset
是以 0 为基数进行索引的。(好吧,“偏移量”可能不完全是“索引的”,但其值可以是 0。)因此,可以将偏移量视为“要跳过多少个扇区”。如果您不跳过任何扇区,则偏移量为 0。如果您跳过第一个扇区,则偏移量为 1。如果我想跳过一个据称包含 63 个扇区的轨道,那么我的偏移量应该是 63。如果我想跳过两个轨道,我的偏移量应该是 126。但现在偏离了二至 128。
我考虑过SectorsPerTrack
以 0 为索引。但这没有意义。“每条磁道 0 个扇区”应该意味着 0 个扇区。这里没有理由使用基于 0 的索引,因为它只会毫无意义地引起混乱。
编辑有一点是合理的,但我无法确认:如果 NAND 页才是最重要的,并且它们的大小为 4096 字节,我应该忽略扇区和磁道,因为它们是纯粹的遗留信息,甚至可能是假的,与对齐的原因无关,那么 128 个扇区(每个 512 字节)是 16 个 NAND 页,会将分区放在下一个 NAND 页的开头,这可能是真正的原因。如果是这样,有人可以用一些参考信息/来源/引用来支持它吗?
问题
所以最后我不明白:为什么这些指南建议使用 128 扇区偏移量?
答案1
我不明白的是,如果如磁盘信息打印输出中所示每个磁道有 63 个扇区,那么两个磁道占用 126 个扇区,因此我猜想第三个磁道应该从偏移量 127 开始。
每磁道 63 个扇区是旧 BIOS 的谎言,与现实无关。只是有人在几千年前为该字段保留了 6 位。与此同时,磁盘变得更大,每磁道扇区数变得毫无意义,因为外磁道(较长)上的扇区比主轴附近的扇区多。对于 SSD,这一切变得更加荒谬。
为了能够使用大磁盘,必须将数字最大化。这就是为什么所有磁盘似乎都有 255 个磁头和每条磁道 63 个扇区。这些是我的:
Disk /dev/sde: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
你不会真的相信我的所有磁盘都是这样的吧。
也许链接在我的SSD问题有帮助。