让硬盘飞一会儿

2016-05-14 16:32
中国信息技术教育 2016年5期
关键词:扇区固态硬盘

编者按:从2010年到2016年,高手论技栏目伴随大家走过了一个又一个春秋,多年来,我们关注技术与应用的初衷从未改变。如今,在“互联网+”的浪潮中,对新技术的探索、对成熟技术的创新应用、对不同技术的关联性思考……我们仍在继续。在此,主持人和嘉宾将分两期探讨固态硬盘的前世今生。

作为新生事物的固态硬盘(SSD),近年来突飞猛进,日益受到重视。虽然人们对它的寿命还有一些担忧,价格相对来说还比较昂贵,但固态硬盘具有的速度快、无噪音、重量轻、能耗低、不怕震动等优点,广为用户青睐,大有取代机械硬盘之势。如何把固态硬盘的性能都发掘出来,让它更好地为用户服务,是摆在我们面前的一个新的课题。

金琦:知己知彼——硬盘性能测试

换了固态硬盘,我们直观的感觉是速度变快了。这个硬盘性能到底如何?花钱升级到底值不值?我们要通过一些软件来进行测试、量化。

1.文件实际读写能力测试

最简单的方法是在Windows系统中进行实际文件的复制和粘贴,拷贝过程中可以显示出具体的速度。但因为Windows文件拷贝机制的问题,拷贝过程中速度变化非常大,这种方法只能作为粗略的参考。我们最常用的方法是使用FastCopy对一些数据进行拷贝。FastCopy是一款非常出色的文件拷贝软件,执行完操作后将在左边显示完成拷贝用到的时间等数据,其中“传输速度”准确地体现了相应存储器的实际读写能力,是测试实际硬盘速度的常用工具(如下页图1)。需要注意的是,不同大小的文件在拷贝时速度相差非常大,我们只有对各种体积的文件进行多次测试才能比较好地衡量一个硬盘的读写能力。

2.通用磁盘性能测试

ATTO Disk Benchmark是由ATTO公司出品的一款磁盘性能测试工具,该软件使用从0.5KB到8192KB不同大小的数据包分别进行读写测试,测试完成后数据用柱状图的形式表达出来,测试结果非常直观,一目了然,能体现出硬盘读写不同大小的文件的性能(如图2)。它能对各种硬盘、U盘、存储卡等存储设备进行测试,主要体现了该设备的理论读写速度。

3.固态硬盘专用性能测试

AS SSD Benchmark是一款固态硬盘专用测试软件,可以测试连续读写、4K对齐、4K随机读写和响应时间的表现,并给出一个综合评分。它不但可以检测固态硬盘的速度,还可以检测固态硬盘特有的性质,如是否4K对齐,是否打开了AHCI等,让用户能更加全面地了解该款固态硬盘。软件测试结果的具体含义如下所述(如图3)。

(1)Seq(连续读写):即持续测试,AS SSD持续向受测分区写入以16MB的尺寸为单位的数据,生成1个达到1GB大小的文件,然后再以同样的单位尺寸读取这个文件,最后计算出平均成绩。

(2)4K(4k单队列深度):即随机单队列深度测试,测试软件以512KB为单位尺寸,生成1GB大小的测试文件,然后在其地址范围(LBA)内进行随机4KB单位尺寸的写入和读取测试,直到跑遍这个范围为止,最后计算平均成绩给出结果。

(3)4K-64Thrd(4k-64队列深度):即随机64队列深度测试,软件会生成64个16MB大小的测试文件(共计1GB),然后同时以4KB的单位尺寸,在这64个文件中进行写入和读取,最后以平均成绩为结果,产生2GB的数据写入量。

(4)Acc.time(访问时间):即数据存取时间测试,以4KB为单位尺寸随机读取全盘地址范围(LBA),以512B为写入单位尺寸,随机写入保留的1GB地址范围内,最后以平均成绩给出测试结果。

(5)Score(成绩):根据硬盘的读写速度,给出一个整体评价成绩。

4.硬盘的IOPS

IOPS(Input/Output Operations Per Second),即每秒进行读写(I/O)操作的次数。对于固态硬盘,个人用户往往更关心它的持续读写速度。而对于学校和企业等用户,对用作服务器和数据库存储的硬盘,还要考虑对固态硬盘的4K随机读写和IOPS才更有意义。因为4K随机读写性能代表了硬盘的数据吞吐能力(单位为IOPS),与持续读写性能相对。在个人日常应用中网页缓存的写入、程序的加载、响应等都与随机4K读写性能息息相关,可以说,4K读写的快慢决定了用户对系统的操作体验。对于学校来说,一个典型的例子,就是现在学校为了更有效地对教师和学生计算机集中管理和对办公计算机数据进行数据保护,尝试实施云桌面(VDI)项目。这就需要对支撑云桌面的存储环境进行仔细规划,以避免VDI启动风暴的问题,即当大量的用户同时登录系统时所造成的系统反应非常缓慢,虚拟桌面的初始启动则相当消耗资源,此时操作系统和应用需要从磁盘读取大量的数据以加载和执行。一台运行Windows 7的虚拟桌面在启动时会产生50到100个IOPS,如果200个用户同时运行就需要1到2万个IOPS,这时应对的最好策略就是将用户的系统盘镜像数据放置在存储的固态硬盘层面上,而将用户私有数据(非系统盘数据)放在存储的机械硬盘层面上以节约成本。AS SSD Benchmark这款软件除了可以测试固态硬盘的读写速度外,还可以测试硬盘的IOPS。单击菜单“View-iops”,再单击“Start”,软件将测试硬盘的吞吐能力。

邱元阳:硬盘性能的天花板——固态硬盘的接口

固态硬盘采用的接口决定了固态硬盘所能支持的最大传输速度,用户要根据实际和需要进行选择。例如,我们的计算机主板只支持SATA2,那固态硬盘再怎么样也无法突破300MB/s的理论速度,固态硬盘的性能就会大打折扣。下面我们来看看固态硬盘有哪些接口。

固态硬盘从诞生至今,先后使用了多种接口,如IDE接口(PATA),目前仍然有厂商提供;ZIF接口(也属于IDE);SCSI(基本淘汰);USB接口等。目前仍在使用的固态硬盘接口主要是SATA类接口和PCI-E类接口。

1.SATA接口

它是最常见的固态硬盘接口,这使得SSD与传统机械硬盘接口可以兼容通用,大小多为2.5英寸。不过SATA接口的固态硬盘有使用SATA2的,也有原生SATA3的,前者速度肯定会慢一些。SATA接口的速率无法突破600MB/s,这成为SATA接口发展的最大限制(如图4)。

2.mSATA接口

它是由SATA接口衍生而来的迷你版本SATA接口,尺寸小巧,为1.8英寸甚至更小,具有与SATA接口相同的速度与可靠性(如图5)。

3.PCI-E接口

传输带宽大,发展瓶颈小,能达到接近800MB/s的读写速度,适合高端大容量的企业级固态硬盘。这种接口的固态硬盘外形就像一块显卡(如图6)。

4.NGFF接口(M.2接口)

Intel提出的一个新的接口标准,宽度和厚度一致性好,通用性高,预留带宽大,发展瓶颈小,非常适合轻薄的超极本。采用PCI-Express x2传输标准的NGFF接口的固态硬盘,最大读取速度可达到700MB/s,写入速度为550MB/s,比mSATA传输速度更快(如图7)。

NGFF接口现在一般都称为M.2接口,用以取代mSATA接口,它在设计之初就留下了很大的兼容空间,既可以通过走PCI-E总线,轻易突破SATA3.0的性能极限,弥补mSATA SSD的不足,又可以通过走SATA3.0的6Gbps速率总线,降低生产成本,接替mSATA SSD停产留下的空缺。

当其走PCI-E总线时,无论是规格尺寸还是传输性能都远胜于mSATA。然而让人意外的是,SATA路线的M.2接口却更让厂家积极。

M.2可以根据金手指的缺口来定义接口模式,决定走PCI-E还是SATA总线。这两个缺口分别为“B key”和“M key”,当接口仅使用“B key”时,传输模式为SATA或PCI-E 2x,当“B key”和“M key”一并使用时,传输模式变为PCI-E 4x,传输速率可达到4GB/s。

除了以上这些常见的接口,固态硬盘还有LIF接口、USB接口、SAS接口(企业存储市场)、FC光纤接口、CFast接口和SFF-8639接口等。

刘宗凡:固态硬盘提速的秘诀——AHCI的启用

在机械硬盘时代,我们并没有过多注意AHCI技术。也许我们接触到AHCI情况最多的是,在使用克隆系统安装新系统后,启动时会碰到蓝屏现象。这时我们要进入BIOS(UEFI),将硬盘AHCI模式关闭(使用IDE模式或兼容模式)就好了。

AHCI(Serial ATA Advanced Host Controller Interface,串行ATA高级主控接口)是在Intel的指导下,由多家公司联合研发的接口标准,它允许存储驱动程序启用高级串行ATA功能,如本机命令队列和热插拔。AHCI通过包含一个PCI BAR(基址寄存器),来实现原生SATA功能。在AHCI 1.0规范中,Intel引入了NCQ(Native Command Queue)功能和热插拔技术。支持NCQ技术的硬盘在接到读写指令后,会根据指令对访问地址进行重新排序,减少了读取时间,使数据传输更为高效,同时也有效地延长了硬盘的使用寿命。和IDE模式相比,两者产生的性能差距主要是由NCQ技术导致的。由于IDE接口是不支持NCQ技术的,所以使用IDE硬盘是否启用AHCI是没有区别的。在使用SATA硬盘时,两者就有了一定差别。但如果是机械硬盘,有没有开启AHCI模式,性能差距并不明显。而IDE模式下系统的兼容性很好,在性能损失不大的情况下,SATA机械硬盘基本上是在模拟IDE模式下工作,特别是使用GHOST封装的系统,几乎全部是采用IDE模式。在使用固态硬盘时,如果开启AHCI模式,性能将得到30%左右的提升;尤其是如果为了衡量硬盘的吞吐能力(IOPS),在小文件下的差别非常惊人,能达到好几倍的差别。因此,在使用固态硬盘时,开启AHCI非常有必要。

1.在已经安装好的系统中启用AHCI

在已经安装好系统的计算机中,如果原来是使用IDE模式(兼容模式),我们直接在BIOS中将其更改为AHCI模式,则计算机基本上避免不了蓝屏。以下两种办法可以解决上述问题。

(1)使用SkyIAR软件。SkyIAR主要用于解决系统部署(系统安装)过程中,由于磁盘控制器IDE、AHCI、RAID工作模式所带来的系统部署困难问题。同时,SkyIAR还可以有效解决“换硬件不换系统”“IDE改AHCI”等与磁盘控制器工作模式息息相关的问题。操作步骤为:①因为这款软件只能在Windows PE下运行,所以首先要制作一个可以启动系统到Windows PE的U盘,将SkyIAR拷到U盘;②进入BIOS,开启硬盘的AHCI模式;③用U盘启动到Windows PE,打开SkyIAR。软件处于“精确匹配”模式(默认模式)时,SkyIAR会根据系统类型列出适合当前系统的IAR驱动列表,并自动检测当前磁盘控制器的硬件ID,最后根据磁盘控制器ID自动在IAR驱动列表中选中可用驱动(如上页图8)。只要点击“开始”,就会用当前使用模式的驱动更换原来的驱动,重新启动系统就可以使用了。

(2)修改注册表。修改注册表的步骤为:①保持BIOS中硬盘模式为IDE,启动计算机,在运行框中输入“regedit”并回车,打开注册表编辑器;②打开“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci”键值,在右边窗口中双击名称为“Start”的项目,将默认的参数由3更改为0。点击“确定”并且保存,随后重新启动计算机(如图9);③进入BIOS,将硬盘模式改为AHCI,然后启动系统,Windows 7及以上系统将自动安装标准串行模式AHCI1.0驱动;④下载安装相应主板芯片所使用的AHCI驱动,或者使用驱动精灵之类软件进行更新驱动。打开设备管理器,如果看到IDE ATA/ATAPI控制器下的是类似“SATA AHCI Controller”就成功了(如图10)。

2.安装系统过程中启用AHCI

要在安装系统过程中启用AHCI,有两个前提,或者相应的系统是修改版的已经集成了AHCI驱动(指Windows XP、Windows 7及以后本身已经集成了AHCI驱动),或者提前把AHCI驱动拷贝到U盘中,手动安装AHCI驱动:①BIOS设定启用AHCI;②准备好存有SATA AHCI驱动的磁盘;③开机启动Windows XP安装,当看到“Press F6 if you need to install a third party SCSI or RAID driver”信息时,立即按下F6键;④插入AHCI驱动程序的U盘,并按下S键,如果安装程序识别出你的驱动盘,会自动提示出安装选单;⑤请注意选择x86(32位系统)还是x64(64位系统)平台驱动,选择后回车即可安装AHCI驱动,完成后会自动回到Windows XP的安装界面,继续完成安装。

邱元阳:容易被忽略的因素——4K对齐及其他

“4K对齐”就是符合“4K扇区”定义格式化过的硬盘,并且按照“4K扇区”的规则写入数据。随着时代的发展,硬盘容量不断扩展,使得之前定义的每个扇区512字节不再是那么的合理,于是将每个扇区512字节改为每个扇区4096个字节,也就是现在常说的“4K扇区”。随着NTFS成为了标准的硬盘文件系统,其文件系统的默认分配单元大小(簇)也是4096字节,为了使簇与扇区相对应,即使物理硬盘分区与计算机使用的逻辑分区对齐,保证硬盘读写效率,所以就有了“4K对齐”的概念。

当在一些特殊情况下格式化的系统(如用ghost11.5以下版本),会默认定义为4096字节大小为一个簇,但因为其引导区占用了一个磁道共63个扇区,真正的文件系统在63号扇区之后。

这样在4K不对齐的情况下,写入再小的数据也会涉及两个扇区的操作,在固态硬盘中这个问题就比较严重了:SSD读写的最小单位叫“页(Pages)”,在有数据的地方要写入新数据,就需要先进行擦除操作,而擦除的最小单位是块(Block,每个块都由很多个页组成)。

传统的分区偏移尺寸一直是从磁盘的第63个扇区(63X512B=31.5KB)开始,因此第一个用户数据的前4KB,都肯定是存放在系统“逻辑扇区”的31.5KB~35.5KB之间的。在SSD上,这就会导致所有数据都横跨在2个页之间,从上面SSD的特性可以知道,这种情况必然导致SSD的性能受到严重影响(特别是随机性能),因为每次的写入操作在SSD上都变成了“读—擦—写”操作。在4K不对齐的情况下,硬盘写入速度差不多要降低一半。

检查4K对齐情况:软件AS SSD Benchmark在左上角会显示4K对齐情况。如果显示为1024K-OK(前面数字为1024的倍数都可以)表示4K已经对齐。DiskGenius在4.6以后版本专门提供了选项进行检测:单击菜单“工具→分区4KB扇区对齐检测”,就会显示检测结果。

如何对齐4K:如果是新硬盘,使用Windows 7及以上系统安装时对硬盘进行分区,这样分出来的区都是4K对齐的,使用DiskGenius分区时默认也会选中4K对齐。对于已经安装好系统或不能重新分区的硬盘来说,可以使用Paragon Alignment Tool来进行无损4K对齐。如果分区中数据比较多,对齐的过程是比较漫长的,100G数据可能要将近1小时。

除了4K对齐,就硬件方面来说,原生SATA3.0接口下固态硬盘才能充分发挥出它的性能。在操作系统方面,要确保使用支持Trim指令打开,也就是要使用Windows 7及以上系统。如果不得已必须要用Windows XP,可以看厂商有没有提供相应的优化软件,否则硬盘会越用越慢,严重影响硬盘的速度。

刘宗凡:压榨固态硬盘的潜力——厂商优化软件的使用

为了更好地发掘固态硬盘的潜力,要通过不断的优化来提升它的性能。各大厂商大多开发了自己品牌的优化软件,三星作为固态硬盘的领头羊之一,旗下的优化软件Samsung SSD Magician更是起着举足轻重的作用(如图11)。

Samsung SSD Magician的主界面会显示磁盘的一些重要信息,如AHCI模式启用情况、SATA类型、操作系统优化情况等。其中“写入的总字节数”对我们估算硬盘的大概寿命有很大帮助。我的硬盘用了3个多月,写入了1.6TB数据,对100GB的硬盘来说大概是16个P/E。以硬盘寿命为3000P/E这样的保守估计,按照目前的使用频率,这个硬盘可以用50年左右。所以大家放心使用就是,不用担心硬盘的寿命。

下面我们来看看该软件的一些核心功能:

①Performance Benchmark:性能基准测试。可以对固态硬盘进行顺序读写速度和随机读写吞吐(IOPS)测试,并且可以对比主流硬盘的性能。如果达不到平均性能,那就需要对硬盘进行一定的优化了。软件还可以对机械硬盘进行基准测试,对比两者的结果,更能看出固态硬盘的巨大优势。

②Performance Optimization:性能优化。这个功能是当操作系统不支持TRIM功能时使用的,如坚守在Windows XP的系统就需要进行优化。

③Firmware Update:固件升级。软件自动查找新固件,如果发现有更新可用,只要单击“更新”按钮,软件便会自动下载安装固件,操作非常简单。

④OS Optimization:操作系统优化。在操作系统中对固态硬盘产生影响的因素不少,如果不是非常熟悉操作系统,有些优化就会遇到困难。软件提供了“最高性能、最大容量、最高可靠性”三个模式供用户选择,选中后只要单击下面的“应用”按钮就可以完成,一键傻瓜式操作。对系统比较了解的用户还可以选择“高级”模式,手工去开启、关闭某些选项。

⑤Over Provisioning:预留空间。在固态硬盘分区时留一些空间不用,可以在一定程度上优化硬盘的性能、延长硬盘的使用寿命。如果在分区时没有预留,这个选项可以在固态硬盘的最后一个分区划出大概10%的空间保留下来。

⑥Secure Erase:安全删除数据。快速、永久地擦除硬盘上的所有数据,对于要求安全销毁数据的场合很有用。

⑦RAPID(Real Time Acceleration Processing of I/O Data)Mode:RAPID模式。所谓RAPID模式,其实并不新鲜,就是将大内存的某些部分虚拟成一个硬盘,将频繁读写的操作放在这个虚拟硬盘进行,极大地提升固态硬盘的性能。由于内存的读写速度远远超过固态硬盘,所以性能的提升是非常惊人的,大概可以提升100%以上。虽然用户也可以通过Ramdisk等软件来实现,但三星自己的软件无疑稳定性更强、操作更简便。对于内存在8G及以上的用户来说,RAPID模式非常有用。

⑧Data Security:数据安全。软件提供了“Class 0、TCG Opal、Encrypted Drive”三种模式来增强数据的安全性。

Intel SSD Toolbox也是一款非常出名的固态硬盘优化软件,提供了与Samsung SSD Magician类似的功能,对于固态硬盘的优化是非常明显的。闪迪(SanDisk)的SSDToolkit、饥饿鲨(OCZ)的OCZToolbox、浦科特的Plextool等,都对自家的固态硬盘提供了监测、诊断、升级、优化等功能,对优化固态硬盘提供了很好的方案。用户在购买固态硬盘时不妨关注一下有没有官方优化软件提供。如果官方没有提供,我们可以安装第三方软件SSD Fresh来进行优化。

硬盘在不断提高转速、提高单碟容量等更新过程中,机械硬盘已经快达到它的极限。固态硬盘的出现,是一次颠覆式创新。虽然它还有一些小问题存在,但瑕不掩瑜。当它的性价比一步步逼近机械硬盘时,就是固态硬盘取代机械硬盘的时候。用好固态硬盘,提升办公效率,对我们来说也是一件幸福的事。

猜你喜欢
扇区固态硬盘
分阶段调整增加扇区通行能力策略
巧克力,不只好吃这么简单
手工修复MBR
浅述“4K对齐”及其发展前景
U盘故障排除经验谈
英特尔发布采用3D NAND技术的数据中心级固态盘
替代你的机械硬盘吧!3款热销SSD固态硬盘对比体验
插拔硬盘所引起的硬盘启动顺序更改
漫谈Windows 7对固态硬盘的优化