硬盘的逻辑结构
1.硬盘参数释疑 到目前为止,人们常说的硬盘参数还是古老的CHS(Cylinder/Head/Sector)参数。那么为什么要使用这些参数,它们的意义是什么?它们的取值范围是什么?
很久以前,硬盘的容量还非常小的时候,人们采用与软盘类似的结构生产硬盘。也就是硬盘盘片的每一条磁道都具有相同的扇区数。由此产生了所谓的3D参数(DiskGeometry).既磁头数(Heads),柱面数(Cylinders),扇区数(Sectors),以及相应的寻址方式。
其中: 磁头数(Heads)表示硬盘总共有几个磁头,也就是有几面盘片,最大为255(用8个二进制位存储); 柱面数(Cylinders)表示硬盘每一面盘片上有几条磁道,最大为1023(用10个二进制位存储); 扇区数(Sectors)表示每一条磁道上有几个扇区,最大为63(用6个二进制位存储); 每个扇区一般是512个字节,理论上讲这不是必须的,但好像没有取别的值的。
所以磁盘最大容量为: 255*1023*63*512/1048576=7.837GB(1M=1048576Bytes)或硬盘厂商常用的单位: 255*1023*63*512/1000000=8.414GB(1M=1000000Bytes) 在CHS寻址方式中,磁头,柱面,扇区的取值范围分别为0到Heads-1。0到Cylinders-1。
1到Sectors(注意是从1开始)。
2.基本Int13H调用简介 BIOSInt13H调用是BIOS提供的磁盘基本输入输出中断调用,它可以完成磁盘(包括硬盘和软盘)的复位,读写,校验,定位,诊,格式化等功能。它使用的就是CHS寻址方式,因此最大识能访问8GB左右的硬盘(本文中如不作特殊说明,均以1M=1048576字节为单位)。
3.现代硬盘结构简介 在老式硬盘中,由于每个磁道的扇区数相等,所以外道的记录密度要远低于内道,因此会浪费很多磁盘空间(与软盘一样)。为了解决这一问题,进一步提高硬盘容量,人们改用等密度结构生产硬盘。也就是说,外圈磁道的扇区比内圈磁道多,采用这种结构后,硬盘不再具有实际的3D参数,寻址方式也改为线性寻址,即以扇区为单位进行寻址。
为了与使用3D寻址的老软件兼容(如使用BIOSInt13H接口的软件),在硬盘控制器内部安装了一个地址翻译器,由它负责将老式3D参数翻译成新的线性参数。这也是为什么现在硬盘的3D参数可以有多种选择的原因(不同的工作模式,对应不同的3D参数,如LBA,LARGE,NORMAL)。
4.扩展Int13H简介 虽然现代硬盘都已经采用了线性寻址,但是由于基本Int13H的制约,使用BIOSInt13H接口的程序,如DOS等还只能访问8G以内的硬盘空间。为了打破这一限制,Microsoft等几家公司制定了扩展Int13H标准(ExtendedInt13H),采用线性寻址方式存取硬盘,所以突破了8G的限制,而且还加入了对可拆卸介质(如活动硬盘)的支持。
硬盘的基本参数
一、容量 作为计算机系统的数据存储器,容量是硬盘最主要的参数。 硬盘的容量以兆字节(MB)或千兆字节(GB)为单位,1GB=1024MB。但硬盘厂商在标称硬盘容量时通常取1G=1000MB,因此我们在BIOS中或在格式化硬盘时看到的容量会比厂家的标称值要小。 硬盘的容量指标还包括硬盘的单碟容量。所谓单碟容量是指硬盘单片盘片的容量,单碟容量越大,单位成本越低,平均访问时间也越短。 对于用户而言,硬盘的容量就象内存一样,永远只会嫌少不会嫌多。Windows操作系统带给我们的除了更为简便的操作外,还带来了文件大小与数量的日益膨胀,一些应用程序动辄就要吃掉上百兆的硬盘空间,而且还有不断增大的趋势。因此,在购买硬盘时适当的超前是明智的。近两年主流硬盘是80G,而160G以上的大容量硬盘亦已开始逐渐普及。 一般情况下硬盘容量越大,单位字节的价格就越便宜,但是超出主流容量的硬盘略微例外。时至2007年12月初,1TB(1000GB)的希捷硬盘中关村报价是¥2550元,500G的硬盘大概是¥965元。
二、转速 转速(Rotationalspeed或Spindlespeed)是指硬盘盘片每分钟转动的圈数,单位为rpm。 早期IDE硬盘的转速一般为5200rpm或5400rpm,曾经Seagate的“大灰熊”系列和Maxtor则达到了7200rpm,是IDE硬盘中转速最快的。如今的硬盘都是7200rpm的转速,而更高的则达到了10000rpm。
三、平均访问时间 平均访问时间(AverageAccessTime)是指磁头从起始位置到达目标磁道位置,并且从目标磁道上找到要读写的数据扇区所需的时间。 平均访问时间体现了硬盘的读写速度,它包括了硬盘的寻道时间和等待时间,即:平均访问时间=平均寻道时间+平均等待时间。
硬盘的平均寻道时间(AverageSeekTime)是指硬盘的磁头移动到盘面指定磁道所需的时间。这个时间当然越小越好,目前硬盘的平均寻道时间通常在8ms到12ms之间,而SCSI硬盘则应小于或等于8ms。
硬盘的等待时间,又叫潜伏期(Latency),是指磁头已处于要访问的磁道,等待所要访问的扇区旋转至磁头下方的时间。平均等待时间为盘片旋转一周所需的时间的一半,一般应在4ms以下。
四、传输速率 传输速率(DataTransferRate)硬盘的数据传输率是指硬盘读写数据的速度,单位为兆字节每秒(MB/s)。硬盘数据传输率又包括了内部数据传输率和外部数据传输率。
内部传输率(InternalTransferRate)也称为持续传输率(SustainedTransferRate),它反映了硬盘缓冲区未用时的性能。内部传输率主要依赖于硬盘的旋转速度。
外部传输率(ExternalTransferRate)也称为突发数据传输率(BurstDataTransferRate)或接口传输率,它标称的是系统总线与硬盘缓冲区之间的数据传输率,外部数据传输率与硬盘接口类型和硬盘缓存的大小有关。
目前FastATA接口硬盘的最大外部传输率为16.6MB/s,而UltraATA接口的硬盘则达到33.3MB/s。
使用SATA(SerialATA)口的硬盘又叫串口硬盘,是未来PC机硬盘的趋势。2001年,由Intel、APT、Dell、IBM、希捷、迈拓这几大厂商组成的SerialATA委员会正式确立了SerialATA1.0规范。2002年,虽然串行ATA的相关设备还未正式上市,但SerialATA委员会已抢先确立了SerialATA2.0规范。SerialATA采用串行连接方式,串行ATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。串行接口还具有结构简单、支持热插拔的优点。
串口硬盘是一种完全不同于并行ATA的新型硬盘接口类型,由于采用串行方式传输数据而知名。相对于并行ATA来说,就具有非常多的优势。首先,SerialATA以连续串行的方式传送数据,一次只会传送1位数据。这样能减少SATA接口的针脚数目,使连接电缆数目变少,效率也会更高。实际上,SerialATA仅用四支针脚就能完成所有的工作,分别用于连接电缆、连接地线、发送数据和接收数据,同时这样的架构还能降低系统能耗和减小系统复杂性。其次,SerialATA的起点更高、发展潜力更大,SerialATA1.0定义的数据传输率可达150MB/s,这比最快的并行ATA(即ATA/133)所能达到133MB/s的最高数据传输率还高,而在SerialATA2.0的数据传输率达到300MB/s,最终SATA将实现600MB/s的最高数据传输率。
五、缓存 与主板上的高速缓存(RAMCache)一样,硬盘缓存的目的是为了解决系统前后级读写速度不匹配的问题,以提高硬盘的读写速度。目前,大多数SATA硬盘的缓存为8M,而Seagate的“酷鱼”系列则使用了32MCache。
Average Seek Time
平均寻道时间.它是了解硬盘性能至关重要的参数之一。它是指硬盘在接收到系统指令后,磁头从开始移动到移动至数据所在的磁道所花费时间的平均值,它一定程度上体现硬盘读取数据的能力,是影响硬盘内部数据传输率的重要参数,单位为毫秒(ms)。不同品牌、不同型号的产品其平均寻道时间也不一样,但这个时间越低,则产品越好,现今主流的硬盘产品平均寻道时间都在在9ms左右。 平均寻道时间实际上是由转速、单碟容量等多个因素综合决定的一个参数。一般来说,硬盘的转速越高,其平均寻道时间就越低;单碟容量越大,其平均寻道时间就越低。当单碟片容量增大时,磁头的寻道动作和移动距离减少,从而使平均寻道时间减少,加快硬盘速度。当然处于市场定位以及噪音控制等方面的考虑,厂商也会人为的调整硬盘的平均寻道时间。 在硬盘上数据是分磁道、分簇存储的,经常的读写操作后,往往数据并不是连续排列在同一磁道上,所以磁头在读取数据时往往需要在磁道之间反复移动,因此平均寻道时间在数据传输中起着十分重要的作用。在读写大量的小文件时,平均寻道时间也起着至关重要的作用。在读写大文件或连续存储的大量数据时,平均寻道时间的优势则得不到体现,此时单碟容量的大小、转速、缓存就是较为重要的因素。
