固态硬盘是近年来的热门话题,但有关这种和传统硬盘完全不同的存储介质,恐怕很多人心中都还存有不少疑问。HardOCP网站日前请到了Intel固态硬盘工程师Jonathan Schmidt,解答了普通用户提出的许多有关固态硬盘使用中的问题。虽然其中很多都属于入门级问题,但相信大多数人看完仍会有所收获。
外部使用环境会如何影响固态硬盘?
由于没有活动部件,固态硬盘比传统硬盘更加抗冲击和震动。另外,由于不使用磁性存储介质,也不会有被磁化导致数据丢失的危险。因此,笔记本制造商如果使用固态硬盘,可以省去很多的硬盘防震保护配件,进一步节约机身内空间和重量。对于桌面PC来说,使用固态硬盘更是不需要担心任何使用环境问题。
有人问到机场安检透视扫描仪是否会影响固态硬盘,这是一个相当有趣的问题,我并不能给出一个权威答案。但要知道,固态硬盘从物理特性来看和U盘、存储卡、手机中的闪存没有什么区别,因此应当不需要担心X射线会对其产生影响。

如何保证固态硬盘的可靠性?
首先,闪存是一项成熟技术,经过了长期的实际测试。虽然闪存颗粒有一定的读写寿命,但以目前的技术来说,其寿命已经远远高于实际使用年限。比如,Intel固态硬盘的官方数据显示,无论使用频度高低,它最少也有5年的有效使用期。如果应用频率不高的话还可以再延长5年。另外,Intel固态硬盘内置了ATA SMART监控功能,随时可以查看其健康状况。用户可以放心,数据安全绝对是固态硬盘制造商的第一考量。

为什么没有3.5寸的固态硬盘?
最主要的原因是,“合理容量”的闪存从物理规格上来看占不了太大空间,做成2.5寸或1.8寸规格更合适。这里我说的“合理容量”是指能够提供实际应用中足够的存储空间,同时价格较为合理。如果将闪存装满一个3.5寸硬盘位,其价格肯定相当惊人。
很多人可能会对此有误解,认为SSD没有3.5寸型号是因为它只针对笔记本市场。实际上,固态硬盘从未排斥过桌面PC,在台式机的3.5寸硬盘位中安装2.5寸固态硬盘没有任何难度。而且,3.5寸和2.5寸硬盘的SATA接口也没有任何区别。

固态硬盘需要整理磁盘碎片么?
这个问题的答案比较复杂。固态硬盘的数据存储方式和传统硬盘有明显的区别,比如为了防止频繁读取某存储单元而导致快速老化,固态硬盘往往使用“损耗平衡”机制,将读写各个区块的次数平均化。目前的操作系统对此也没有准备。
磁盘碎片整理程序的主要原理是,将那些需要频繁读取的数据放在可以高速访问的地方,很少访问的数据就堆在边边角角。而固态硬盘的原理决定,它能够非常快速的找到任何一块数据。目前的磁盘整理工具对优化固态硬盘的文件系统就显得无能为力了。因此,我的建议是,固态硬盘用户应当禁用自动磁盘碎片整理,也不要手动进行整理。
当然,对于固态硬盘来说也同样存在存储分布的优化问题,只是这个问题在SSD上远不如传统硬盘那么重要。目前,各固态硬盘厂商都在用固件优化的形式解决这一问题。未来也可能会出现专门针对固态硬盘的“碎片整理”工具,不过它需要首先了解各厂商固态硬盘的具体工作方式。
固态硬盘会越用越慢么?
这是一个复杂的问题。在SSD的寿命周期中,很多因素都会影响它的性能表现。其中最重要的就是数据碎片问题。很不幸,目前尚无任何方法从外部衡量固态硬盘的数据破碎程度的影响。就像上面说的一样,测试程序也许能够检测出固态硬盘内部存储条理与否的性能差别,但这并不会明显影响用户体验。对固态硬盘文件系统的优化未来还将进一步解决这一问题。

Intel固态硬盘支持热插拔么?
没问题,完全支持SATA规范定义的热插拔功能。

Intel固态硬盘使用怎样的制程工艺?
X18-M和X25-M使用的是Intel 50nm MLC闪存,而X25-E使用的是50nm SLC闪存。

当固态硬盘被装满的时候,性能会下降么?
很好的问题。对于固态硬盘来说,性能和存储数据的多少没有什么关系。无论空空如也还是接近爆满,闪存的损耗均衡管理算法都会照常工作。一些常见文件系统如NTFS、FAT32在空间不足时可能会出现性能下降,但这是软件的问题,和是否使用固态存储没有关联。未来当专门针对固态硬盘的文件系统问世时,可能也会出现硬盘存储数据量多少对性能的影响的例子。

哪种文件系统最适合固态硬盘?
目前的的各种文件系统都没有对固态硬盘进行什么优化。计算机行业花了几十年的时间,针对旋转磁介质存储进行优化,但固态硬盘的出现让这些优化彻底作废。幸运的是,以目前固态硬盘的速度,遵循旧文件系统的要求像传统硬盘那样工作,并不会有太大的损失。不过在不远的将来,我们肯定将看到专为固态硬盘优化的文件系统。
微软在Windows 7中就将对SSD进行优化,比如系统会在使用固态硬盘时禁用自动磁盘碎片整理功能。其中我最关注的是ATA trim命令,它能够通知固态硬盘,某区块已经不再使用,SSD可以将其空间收回,纳入下一步的“损耗平衡”运算中。
在Linux系统中,你可非常简单的通过禁用内核disk IO scheduler模块来对固态硬盘进行优化。由于不存在磁头读写的移位问题,该模块在磁盘读写时进行重新排序对固态硬盘没有任何意义,甚至会降低性能。Windows 7估计也会进行同样的改进,只是目前还未公布。

固态硬盘RAID 0的性能怎样?可以在SSD内部实现RAID 0么?
先来回答第二个问题。固态硬盘的读写本身就是并行进行的,目前Intel固态硬盘使用10条并行通道来访问闪存,一定意义上就相当于内置10路RAID 0。
使用多块固态硬盘组建RAID 0阵列的性能相当可观,但需要注意的是,一定要保证RAID控制器能够满足其要求。固态硬盘在阵列模式下工作的数据量相当庞大,很多RAID控制器在设计时可能完全没有考虑过这样的速度。

固态硬盘速度的决定因素是什么?目前的瓶颈在哪里?
任何固态硬盘的性能,都是由原始的闪存带宽,损耗平衡算法的效率(固件)以及接口(SATA、PCI-E等)共同决定的。有SATA接口速度卡在那里,闪存性能再强也没有意义。和业界其他厂商一样,我们也将逐步提升固态硬盘性能。虽然不能说固态硬盘在“赶着”SATA-III标准上马,但一旦第三代SATA标准推出,固态硬盘肯定会从中受益。
SSD和HDD相比有何优劣?
和其他任何事情的两面一样,SSD和HDD各有优劣。目前固态硬盘最大的劣势就是成本和容量,而最大的优势就是性能。另外,固态硬盘完成相同的操作所需的电能更少,这意味着笔记本可以延长电池续航时间,数据中心能够大大节约电费。由于更加耐震动冲击,固态硬盘也比HDD更适合移动设备。如果容量需求不高的话,固态硬盘甚至可以比传统硬盘更便宜。比如目前售价最低的上网本基本上都是使用小容量固态硬盘。
下面我们来具体看固态硬盘的性能优势,简单比较数据会让你忽略掉很多东西。比如,Intel X25-M硬盘的持续读取速度为250MB/s,一块常见SATA硬盘则为100MB/s,从字面上来看SSD速度是HDD的2.5倍。这时你就忽略随机访问时间的问题。X25-M的平均“寻道时间”仅为85微妙,而传统硬盘大多在4到15毫秒,差距达到50甚至150倍。
因此,两者的性能区别要视应用而定。操作系统启动主要依赖随机读取小块数据,因此固态硬盘可比传统硬盘快100倍。而在应用程序连续读取大尺寸文件时,固态硬盘的优势就只有2.5倍左右了。
同时,仍有一些应用并不适合固态硬盘,比如大规模数据存档。那些极少访问的数据用闪存来存储显然是一种浪费。另外,在视频播放时使用固态硬盘也不会有任何优势,只要达到视频不卡壳的速度需求就可以了。只不过,HTPC用户可能会青睐固态硬盘的静音和尺寸。

为什么大家都用MLC颗粒,SLC不是更快么?
答 没错,SLC NAND闪存更快,但只有在面对面比较的时候才能看到明显区别。而且,只要大规模使用并行读写机制,MLC同样可以实现高速度。在这样的情况下,SSD厂商肯定会更加关注成本和容量问题,MLC的低价大容量就成了优势。我想大家都看到了,Intel的M系列固态硬盘使用的就是MLC颗粒,不是照样很快么?

固态硬盘的功耗相比传统硬盘孰高孰低?
我曾看过一些报告宣称固态硬盘比传统硬盘更费电,但也有一些调查显示SSD更省电。通常来看,SSD和HDD在同样高负载工作,或同样处在休眠状态下时,功耗是类似的。但固态硬盘仍然在功耗表现上有一些优势,比如SSD内部没有旋转马达,因此在闲置状态时的功耗明显更低。第二,由于不存在转速提升或下降的启动时间,SSD进入休眠状态或从休眠状态唤醒的时间更短,也更频繁。最后,固态硬盘能够在更短时间内完成同样的工作,因此更早进入休眠状态。以上这些优势让固态硬盘在实际使用中确实比传统硬盘省电。

是否存在不同等级的闪存?为什么U盘比同样容量的固态硬盘便宜的多?
确实,闪存有不同的质量,对应不同的成本,就像CPU一样。U盘一般使用较低档次的闪存,如果你把U盘当作硬盘来使用,我想你马上就能感受到性能差别。另外在可靠性上,优劣闪存的区别也是明显的,高质量的闪存芯片在整个寿命周期内的出错几率要低得多。虽然我们完全可以用廉价闪存造出便宜的固态硬盘,但便宜没好货的道理我想大家都是明白的。