存储 频道

Windows为什么不能很好的支持固态硬盘

  【IT168 资讯】硬盘驱动器(HDD)读/写花费的时间大概相同,而PC上的SSD(SSD是固态硬盘,没有加速存写技术(WA))驱动器写数据的时间却是读数据时间的100倍。在大多数情况下,SSD唯一所做的就是读取HDD上的rips(快速信息展示服务),像80/20这样的读/写法可以使它们在速度上不相上下。任何超出80/20这一比例的读写规律都将表明SSD的执行性能不如HDD。当然,这还取决于许多其它因素,但是这是一个经验法则。

  Windows是基于以下两个方面的,从而使其在支持SSD方面存在问题:

  1.它假定读和写数据花费的时间是相同的。

  2.它使用4KB虚拟内存页面。这是70年代早期(或者可能是60年代后期)第一代IBM虚拟内存系统遗留下来的,在当时相对于大型机总的核心内存来说,4KB的容量已经算是很大了。这意味着每一个回收页面都以离散的4KB大小写入磁盘。

  企业级SSD具有DRAM写缓冲区,将这些小容量随机写缓冲区聚集起来,然后将它们传递到闪存,作为更大容量的缓存区(大量的写缓冲区的整合),这对于DRAM来说是有必要的,或者是当电源断电时,这也是非常重要的。这样,就会存在一些罕见的闪存写缓冲区。缓冲区提高了驱动器厂商的生产成本。PC上的SSD就没有这种缓冲区(少数除外,如Micron的新产品P200),所以,SSD受到了限制。

  在Windows中增加对SSD的支持,包括驱使O/S收回更大的DRAM页面,这样其它软件就可以延迟磁盘写操作,直到获得一个更大的写页面空间。NAND芯片的擦除块是256KB,这是获得最快的NAND响应的非常好的容量大小。

  上周召开的闪存高峰会(Flash Memory Summit)上,某位主持人(Xiotech公司的Rob Peglar)在电脑启动期间对其硬盘的活动进行了跟踪,他说,电脑启动期间,硬盘的I/O操作数量是180万。虽然我没有问他读/取平衡是什么,但是,这么多的I/O操作数肯定会存在很多的写操作。Windows是磁盘捆绑的,对于SSD来说,这点需要优化(虽然可能非常困难)。

  我认为,Windows对SSD进行优化需要公司方面的努力,因为一直以来,公司方面都没有将重点单独放在这个问题上,因此,在任何情况下,这个问题都是非常普遍的。

  有趣的是,Intel的新Turbo Memory并没有反复强调要缩短启动时间。到目前为止,这是SSD厂商唯一值得夸耀的一件事。

0
相关文章