很多人在购买新硬盘时会发现,自己买的硬盘容量不对,总是缺斤少两,是买到假的吗?其实并不是,而是因为硬盘容量单位换算问题,也可以说是硬盘厂商的潜规则吧。下面,我们分机械硬盘和固态硬盘来分别说说硬盘可用容...
很多人在购买新硬盘时会发现,自己买的硬盘容量不对,总是缺斤少两,是买到假的吗?其实并不是,而是因为硬盘容量单位换算问题,也可以说是硬盘厂商的潜规则吧。下面,我们分机械硬盘和固态硬盘来分别说说硬盘可用容量显示不对的原因。
一、机械硬盘篇
首先要明确一点理论算法和实际算法中间是有差距的,那为什么厂商硬盘容量算法和理论不一样呢?其实说白了还是潜规则的原因,一个是可以节约一点是一点,另外一个主要是厂商为了算起来方便,具体算法如下:
硬盘厂商的标准:1GB=1,000MB 1MB=1,000KB 1KB=1,000byte
操作系统的算法:1GB=1,024MB 1MB=1,024KB 1KB=1,024byte
讲到这里,相信大家已经有所头绪了。在计算机系统中,按照1024进制标准计算,可以通俗的理解成厂商为了更好计算而没有采用理论标准值去计算。所以你安装的1TB硬盘在系统中的显示可能只有1000GB。
另外值得一提的是即便按照厂家的标准,1TB=1000G,但实际在电脑里显示的却会发现只有930G左右,这又是为什么呢,厂家严重扣量忽悠吗?
实际上:硬盘厂商的1TB=1000×1000×1000/(1024×1024×1024)≈Windows操作系统中的0.9313GB。一般硬盘内部内置程序的占用一些空间,提供给系统文件使用,所以操作系统显示的总容量和硬盘的型号容量存在差异这是一个正常现象。机械硬盘容量越大,比如3T、4T,实际换算过来,“消失”的容量也就越大。
二、SSD固态硬盘
SSD工作机制完全不同于机械硬盘,它的容量有120G/128G,240G/250G/256G之分,但实际使用到容量往往只有119G,230G左右!这跟机械硬盘的理论算法也是一样的吗?其实不然,两个不同领域,行业标准也不一样,实际跟理论容量,SSD没那么简单。这涉及到一个名词:Over-provisioning
预留空间。
Over-provisioning是指SSD保留一部分容量空间留作他用,这部分空间用户不可操作,容量大小一般是由主控决定。
OP比率=(SSD物理空间-用户可用空间)/用户可用空间。
除了第一级OP空间之外,多数主控还支持二级OP空间,具体容量和配置由厂商自己决定,所以128GB闪存作出的SSD有128GB、120GB乃至100GB之分,也就是说OP空间分别是0、7%、28%,其他容量依此类推。
还有固态硬盘具有三级OP空间的,分配方式就很自由了,但是三级OP往往要牺牲部分用户可用空间,所以很多消费级SSD都没有三级OP空间,而企业级SSD中通常需要配置三级OP空间以便在大量数据读写中保持性能。
除了第一级OP空间,有些厂商允许用户自定义OP空间大小,比如三星、Fusion-IO的工具软件就有这样的功能,玩家可以根据自己的需要配置。
简单来说,OP空间可以简单理解为SSD固态硬盘预留的交换空间,从前面的介绍来看,OP空间在GC垃圾回收、WL耗损平衡、减少写入放大等多个方面都有作用,具体如何应用要取决于SSD主控算法,具体如何应用要取决于SSD主控算法了。
随着技术的进步,二级OP空间的必要性也在降低,以SF主控为例,原本保留的7%
OP空间逐渐被释放出来,用户的可用空间可以增加16GB左右,120GB型号也可以增加8GB左右,虽然不是很多,但是对普通用户来说还是好事一件。
消费类的固态硬盘可能需要其7%或更多的空白容量来支持合理的垃圾收集功能,确保垃圾收集程序和Flash控制器总能有额外的可用空间进行工作。(例如Crucial的MX200/MX100保留了业界标准的7%容量做消费者无法访问的空白区)
总结:
以上就是为什么硬盘可用容量显示不对的原因,硬盘空间容量并不是硬盘空间丢失,而是硬盘商换算的单位是整数,而操作系统是以1024为倍数换算的。