硬盘容量和整数分区的小知识

对于计算机,或者我们经验来说,数据单位之间的换算都是用的 1024
如:1M = 1024K 等。为了方便计算硬盘厂商使用的是 1000 ,即:
1M = 1000K,所以一个硬盘的实际容量和标注的就会有差距。我们以
1T 的硬盘为例,用硬盘厂商的计算即为 1,000,000,000,000B ,但
计算机会用下面的方式换算:
1, 000, 000, 000, 000B = 976, 562, 500K = 953, 674M = 931G
所以和我们想象中的差了好几十 G 。

另一个整数分区,我们一般想得到整数的分区,如 10G, 20G 等,可
实际上我们很难得到到一个预期的分区结果。
实际上硬盘分区是按柱面分的,所有分区都是由 0 磁头,
0 扇区开始,255 磁头,63 扇区结束,分区最小单位是
512b * 255 * 63= 8225280 b = 7.84423828125M

对于 FAT32 分区,每 1024 字节可用容量会使用 4 字节用于存储磁盘
结构和数据存储位置等信息,但分区中第一 GB 可用容量却不占用额外的
存储容量,所以分 200G 大小,理论值还是 200 * 1024M= 204800M,
需要柱面数为 26109,计算实际大小为
(200 * 1024) + (26109*4 / 1024)= 204902MB

对于 NTFS 分区,例如 200G 的分区,理论上为 200 * 1024M = 204800M,
然而实际需要柱面数为 204800M / 7.84424M = 26108.3 取整为 26109;
计算实际过程为:
26109 x 7.84424M = 204805.2M 和
26108 x 7.84424M = 204797.4M 之间,
取 204805M 为际分区大小。

Post a Comment

Your email is never shared. Required fields are marked *

*
*