从你眼中看世界
世界就在你手中

最精确硬盘分区的算法

1. 硬盘厂商为了换算方便,是按照千进制来计算硬盘容量的,一块1TB的硬盘实际容量是

1,000,000,000,000Bit=976,562,500KB=953,674MB=931GB左右

分区后实际可用容量会更小;
2. 操作系统实际计算硬盘容量是按照1024进制,由此导致实际可用容量小于标称容量,硬盘容量越大,“损失”的容量也越大;
3. 电脑当中实际显示的分区大小,既不是按照硬盘厂商的设计也不是操作系统的设计,而是另有误差。原因就是硬盘在分区和格式化之后还会在硬盘上占用一定的空间用来存储磁盘结构和数据位置等信息;
4. 对于FAT32分区,每1024字节可用容量会使用4字节用于存储磁盘结构和数据存储位置等信息,但分区中第一GB可用容量却不占用额外的存储容量,因此FAT32整数分区公式为:

应分配MB数=(分区GB数-1)×4+1024×分区GB数

5. 对于NTFS分区,原理更加复杂。NTFS分区的最小容量单位不可能精确到1MB,而是柱面大小。硬盘一般有255磁头,63扇区,

故每柱面大小为:512bitx255x63=8225280bit=7.84423828125MB

如果要分10GB,那么应当是10x1024MB=10240MB
实际需要柱面数为10240?.84423828125=1305.4
柱面只可能算整数,即1306个柱面
这样实际应分MB数为1306x7.84423828125=10244.575MB
不管小数点后面几位都进1,也就是10245MB,这样系统才能认成是10.0GB了
上面的计算方法太过复杂,原理大家了解一些就行了,真正操作时如果还用公式计算器慢慢换算,那就效率太低了。现在已经有人为我们设计了简单方便的硬盘整数分区计算器,支持FAT32和NTFS两种格式:
最精确硬盘分区的算法 - 第1张  | CALONYE.COM
下面附10GB到200GB整10GB递增的精确计算结果:

10GB = 10245MB
20GB = 20482MB
30GB = 30726MB
40GB = 40963MB
50GB = 51208MB
60GB = 61444MB
70GB = 71681MB
80GB = 81926MB
90GB = 92162MB
100GB = 102407MB
110GB = 112644MB
120GB = 122888MB
130GB = 133125MB
140GB = 143362MB
150GB = 153606MB
160GB = 163843MB
170GB = 174088MB
180GB = 184324MB
190GB = 194561MB

此精确分区结果,在管理工具-磁盘管理界面,和Windows资源管理器里面显示的是整数,

10G就是10.00GB,20G就是20.00GB,40G就是40.00GB.

p.s,强迫症的人伤不起..

赞(0) 打赏
转载请标注来源:CALONYE.COM » 最精确硬盘分区的算法
分享到:

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏