“硬”道理
2009-09-14易辉
易 辉
本文将详细介绍硬盘这一现代主要数据存储技术的详细信息。
硬盘是大部分人存储数据的首要选择,毕竟我们已经习惯了将自己的文件和照片保存在硬盘上。
硬盘只有在发出噪音令人厌烦,或故障导致重要数据丢失后,才会引起我们的注意。但是否有人考虑过硬盘的工作原理是什么,内部结构又是什么?在本文中,我们会介绍硬盘这种精密仪器是如何工作的。
硬盘简史
硬盘发明到现在已经超过50年了,所有硬盘的鼻祖都是IBM的350存储单元(或者IBM所说的“磁盘文件”),该设备最早在1956年用于305 Ramac计算机中,该计算机使用了50片24英寸的磁性盘片(Platter),最多可以保存五百万个7-bit字符,同时使用一个磁头进行数据的读写。但在1973年,IBM发明了到现在依然被所有硬盘使用的技术,该技术名为3340,当然,很多人更熟悉该技术的另一个名字:温彻斯特驱动器(Winchester drive),该技术引入了Low-mass磁头,涂有磁性材料的盘片被封装到盒子中,通过使用两张或四张14英寸的盘片,可实现35MB或70MB的存储容量。
在1980年,我们见到了第一块5.25英寸全高硬盘;希捷ST-506,这是第一块用于个人电脑的硬盘。可存储5MB数据。三年后上市的Rodime硬盘则开始使用目前我们热知的3.5英寸半高样式,其中R0352型号可以在两张3.5英寸盘片上存储IOMB数据。在1988年,则出现了第一块矮版(Low-profile)3.5英寸硬盘Conner PeripheralsCP3022,该硬盘可以在一张3.5英寸盘片上存储21MB数据。这种形式的硬盘最终成为现代硬盘的标准,同年还出现了第一块2.5英寸硬盘,这种硬盘当时由名为Prairie Tek的公司发布,型号是220,可以在两张2.5英寸盘片上存储20MB数据。
在二十世纪九十年代初,IBM对于硬盘的数据访问方式带来了三个重要的改变。IBM Redwing是一款发布于1990年的857MB硬盘,这是第一个使用巨磁阻(MagnetoResistive,MR)磁头的硬盘,同时这种硬盘使用了名为PRML(Patrial Response MaximumLikelihood,局部响应最大拟然)的数据编码方式。一年后,IBM的Pacifica大型机硬盘成了第一个在盘片表面用薄膜介质材料取代磁性氧化物介质的硬盘。
第一块万转硬盘是在1997年被希捷发布的,当时发布的型号是STIgl01 Cheetah 9,该硬盘使用了8张3.5英寸盘片,可提供9.1GB存储容量。一年后,该公司又发布了使用3英寸盘片的万转硬盘Cheetah 18(STI 18202),该硬盘具有12张盘片,容量是18.2GB。
同年日立还发布了速度更快的硬盘DK3EIT-91,该硬盘的转速高达12,000rpm,而在1999年,IBM发布了世界上第一块微硬盘。
二十世纪末。希捷发布的更高速的Cheetah X15硬盘速度已经达到15,000rpm,容量为18.3GB。
随着容量的提升,硬盘的接口也在持续改进,不仅并行ATA标准的速度越来越高,而且在2003年,串行ATA工作组还发布了串行ATA(SATA)1.0a标准,该标准已经开始逐渐普及,而现在大部分新系统中都已经开始使用SATA接口。
与此同时,记录技术也在改进,在2005年,东芝发布了世界上第一款使用“垂直记录”技术的1.8英寸商用硬盘,不过希捷是第一家将使用该技术的2.5英寸和3.5英寸硬盘投入市场的厂商(都是在2006年)。正是有了该技术,磁性介质上的比特密度才可以更高,同时也因为有了该技术。日立在2007年发布了第一块TB级的硬盘(iTB)。同时在2007年也首次出现了基于闪存的固态硬盘,也就是SSD。
硬盘如何工作?
硬盘存储和访问数据的工作方式类似磁带。在磁盘上,通过磁盘表面小块区域内磁性的变化即可记录数据,而磁盘表面则涂有一层钴铂合金。这种小块区域可以理解为磁条,可以指向一个或两个方向,而北极则指向盘片旋转的方向,或相反方向。
在大部分新型硬盘中,磁介质的排列方向是垂直的,这样北极可能面向或背向盘片表面。
磁介质的方向代表了这个比特上保存的数据的二进制“1”,或“0”,在写入数据时,磁头需要施加更强的磁力以改变磁介质的极性,而读取数据时则需要检测磁介质的当前状态。
每张盘片的上表面都有一个可移动的磁头,同时一块硬盘中的所有磁头都是通过同一个动臂(Actuator)驱动的,这样做可以让同一时间里访问同一磁道,以及访问所有盘片的操作更高效。为了读写数据,磁头和盘片表面之间的距离必须非常近,通常这个距离只有0.0003mm。为了能够尽可能靠近盘片表面,但不至于有物理上的接触,磁头需要通过盘片旋转产生的气垫获得浮力。磁头可以在物理上接触到盘片的唯一时机是硬盘被关闭,或发生非常严重的意外,例如硬盘跌落的时候。
大部分现代硬盘会将磁头停靠在磁盘上一块专用的保留区域内,这个区域叫做停靠区(Landing Zone)。
要读取或写入数据,控制器必须等待相应的扇区正好旋转到磁头的下方。另外还需要监控磁头的位置,以进行纠错,而遇到的任何错误都将被反馈回内部的循环系统,以确保硬盘总是能正确读写。
磁头本身是由磁阻材料制造的,这意味着磁头的电阻会随着靠近的磁性区域的变化发生变化,因此随着盘片在磁头下方的移动,磁头的电阻就能代表盘片上当前位置存储的“0”和“1”。在将数据写入到硬盘时,要写入的数据会被应用给磁头,并在磁头下方的盘片表面上创建出相应极性的磁力线。
数据是以扇区和磁道为基础保存的(简单来说,磁道指所有同轴柱面,同时会根据特定长度分为不同扇区)。这些划分都是在进行低级格式化的时候进行的,同时还需要对每个扇区的开始和结束点进行记录。
扇区可以包含固定数量的字节,通常是512或256个,这些扇区组合到一起就形成了簇。实际的文件存储操作以及其他工作,例如空间的分配等都悬由高级格式化以及操作系统负责的。
IDE和ATA
在访问硬盘上的数据时,信息会通过硬盘自己的IDE(Integrated DriveElectronics,集成设备电路)控制器进行传输,而当年在第一块硬盘上,我们必须在电脑中安装独立的控制器卡,而且当时的硬
盘本身智能程度也并不高。IDE控制器可以理解为硬盘的大脑,硬盘需要通过EIDE(EnhancedIDE,增强的IDE)SATA接口连接到主板,这些接口则是由主板上的控制器芯片控制的。
在SATA标准被广泛采用之前,用于描述硬盘接口最常用的术语是IDE以及ATA,这两个代表同一个含义。因为西部数据创造了“IDE”这个称呼,因此其他制造商只能使用不同的名称,因此ATA(AT Attachment,AT连接)就应运而生了。AT(Advanced Technology,高级技术)代表IBM PC/AT中的AT总线架构。
事实上,ATA接口有7种不同的版本。同时都可以向后兼容,不同版本的主要区别在于连接的速度。
SATA和SCSI
发布于2003年的第一个SATA标准最大支持150MBps的数据传输率,相比ATA-7标准,这个速度并不是很快,但现在,即将发布的下一代SATA标准的速率将达到3,0GBps(300MBps),这种更快速度的标准曾被叫做是SATAⅡ,但这其实只是负责制定SATA标准的工作组的名称。为了避免误解,该工作组已经更名为SATA-IO。
SATA数据线使用4Pin的连接线,而不是ATA数据线的80Pin模式,很明显,这样数据线也可以更细。
另外,SATA的低电压也意味着数据线可以做得很长。同时SATA塑构的其他优势还包括点对点支持,这样就避免了像ATA硬盘那样需要设置主从模式。
SCSI(Small ComputerSystem Interface,小型计算机系统接口)硬盘通常只属于服务器或工作站,而且目前这类接口已经不怎么常用了,因为串口连接SCSI(SAS)硬盘(见下文)已经开始主导这一领域。
串口连接SCSI
SAS是服务器环境上最新一代的接口,也是SCSI的继任者,可提供所有高端功能,例如Multi Initiator支持,以及全双工通讯,同时这种接口要比SATA更小。SAS可支持SAS和SATA硬盘,因此SATA硬盘也可以连接到SAS控制器,但SAS硬盘无法连接到SATA控制器。
SAS和SATA类似,最高可工作在3Gbps的速度下,同时该接口具有扩展的驱动器寻址功能,这使得SAS可以在每个接口上最多支持4,032个设备,这要比SCSI或SATA多不少。
硬盘的未来
虽然有些人认为闪存硬盘是未来的趋势,但有些工程师却不这样认为。对于非常热衷于新技术的人,则有一些自己的新奇想法。其中之一是热辅助记录(TAR,Thermally Assisted Recording),该技术需要在磁头写人数据位置使用激光对记录介质进行加热,这样只需要使用很少的磁性介质即可提升存储密度。另一种提升密度的方法是使用图案化磁记录介质(Pattemed Media)。
在目前的硬盘中,每个记录的比特都是由盘片表面上很多随机磁介质组成的,而在图案化磁记录介质中,磁介质层是按照高度一致的岛屿(IsIand)排列而成,每个岛屿可以存储一个比特。不过确定的是,无论如何宣扬硬盘大限已至。其实硬盘的生命力还有很长。