当前位置:网站首页>干的想喝水,一篇文章带你读懂硬盘工作原理!

干的想喝水,一篇文章带你读懂硬盘工作原理!

2020-12-08 14:01:30 osc_t6qz550e

干的想喝水,一篇文章带你读懂硬盘工作原理!

干的想喝水,一篇文章带你读懂硬盘工作原理!

一、硬盘的基本结构和工作原理

1956年9月,IBM一个工程小组向世界展示了第一台磁盘存储系统Ramac,1968年,Winch?鄄ester技术(温盘技术)被提出,从此人类开始从顺序存储时代来到随机存储时代,历经50年沧海桑田,它一直是现代硬盘的原形。现代硬盘主要由「盘体」、「集成电路」、「接口」等部件组成,其外观如下图所示:
干的想喝水,一篇文章带你读懂硬盘工作原理!

如果把图中的集成电路板卸下来,我们可以看到盘体,盘体是一个密封腔,里面装有磁介质盘片、读写磁头、电动机等主要部件,将硬盘拆开,其内部构造一览无遗。
干的想喝水,一篇文章带你读懂硬盘工作原理!

「盘片」是用于放置大量数据的磁盘存储介质,为高密度、高稳定的铝合金或玻璃材质,表面光滑平整无暇疵,均匀喷镀了薄薄一层密度极高的磁粉,上面再涂上石墨进行保护和润滑。目前台式机硬盘盘片主要使用「3.5寸盘」。盘片套在电动机主轴上,在电机带动下高速旋转,转速最高可超过「15000转/分钟」,取证时遇到的多为7200 RPM或5400 RPM。

目前电机有「步进电机」、「力矩电机」和「音圈电机」三种,现在主要使用音圈电机。磁头是一片薄膜读写头,固定在磁头臂上,寻道时随磁头臂一起移动。上面所述的是最简单的机构,现在的盘片基本上都是双面镀磁,所以磁头常被分为上读写磁头和下读写磁头,盘片就夹在上、下读写头中间旋转,如果盘片不止一张(通常为3张,中间用垫圈隔开),这种磁头组就更多,但都固定在同一组磁头臂上,移动时整组磁头臂整体移动,这样可以使磁盘容量和读写速度成倍增长。

我们可以用Winchester原理来描述硬盘工作的过程:“密封、固定并高速旋转的镀磁盘片,磁头沿盘片径向移动,磁头悬浮在高速旋转的盘片上方而不与盘片直接接触”。这就是现代绝大多数硬盘的原形。

硬盘是「精密而脆弱」的电子设备,正是因为上面的结构和工作原理,所以对于看起来结结实实的硬盘,我们在进行取证时同样需要对它小心翼翼。例如:接上电源前,要把它放在防静电袋中保存,在取证机上取证时要用固定装置将其固定好,且操作过程中要放在不易晃动的工作台上,工作环境应干燥、少灰尘、无静电,且附近不要有强磁场,如果我们需要打开盘体,就一定要进「风淋室」(clean room)了。

二、硬盘的存储原理与存储结构

大家都知道磁铁有两个极性,一个是「南极」(S极),一个是「北极」(N极),硬盘正是利用磁粒子的极性来记录数据的。盘片表面的那些磁粉就是磁粒子。盘片被划分成若干个同心圆(称为磁道),在每个同心圆的磁道上就好像有无数的任意排列的小磁铁,当这些小磁铁受到来自磁头磁场的影响时,排列的方向随之改变,利用磁头的磁力统一某区域小磁铁的方向,就可以使该区域磁场呈现相同极性,如果把S/N两种极性与二进制中的0和1对应,就可以表示二进制数据,这些磁粒子都是永磁体,即便磁头离开,它依然可以长时间保持形成的极性,这样就能达到储存信息的目的了。磁头在读取数据时,可以感应磁粒子的不同极性,从而转换成不同的电脉冲信号,利用解码器将这些原始信号翻译出来,就成为了电脑能使用的数据。

在讲解硬盘的存储结构前,有必要介绍一下下面几个先导概念:

盘面:
每个盘片都有上、下两面(Side),两面都会用来存储数据,成为有效盘面(也有个别硬盘盘片只用一面)。每个有效盘面都有一个盘面号,由上而下从“0”开始依次编号,又因为每个有效盘面都对应一个读写磁头,所以磁头号等价于盘面号。通常一块硬盘有3个相同的盘片,故磁头号(盘面号)编号为0至5。

磁道:
盘片低级格式化时被划分成许多同心圆,这些同心圆称为磁道(Track)。磁道由外向圆心从0开始顺序编号,一个盘面上通常有几千条磁道。这里要注意,磁道是看不见的,它不过是盘面上被极化的一些磁化区,但存有数据的磁盘在磁力显微镜下面能够被识别出磁道的轨迹。盘片旋转时,磁道角速度相同,但由于半径不同,其线速度不同。通常我们所说的0磁道就是指的盘片有效区的最外圈。

柱面:
多个盘片时,立体来看,所有盘面上相同半径的磁道构成一个圆柱,称做柱面(Cylinder),所以一块硬盘的柱面数等价于每个盘面的磁道数。例如,一个三张盘片的硬盘,0柱面就是指的这三张盘片的0磁道所构成的圆柱。

物理扇区:
低级格式化划分磁道的同时,每个磁道又被划分成若干段「圆弧」,每段圆弧叫做一个「物理扇区」(Sector),从1开始编号(前面几个概念都是从0开始编号),目前行业标准里,一条磁道常被分为63个物理扇区,当然一条磁道也可以分成更多或更少的扇区,但一般应为奇数,主要是出于考虑间隔因子(也叫交叉因子)的缘故,限于篇幅,这里就不详细介绍了。操作系统并不是在磁道上连续的记录数据,而是以每个物理扇区中的数据作为一个基本单元读出或写入,所以扇区是硬盘读写数据的基本单位(存储数据的单位为“「簇」”,属于逻辑部分文件系统中的内容,这里不讨论)。每个扇区包含两个主要部分:数据地址段和数据段,正常情况下,每个扇区包括512Byte的数据和4Byte其他信息。

明确以上几个概念后,我们来看看硬盘是如何表示自己的空间的。硬盘在每个物理扇区的头几个字节存放该扇区的CHS编号,这里的C、H、S分别是柱面、磁头、扇区三个英文单词的首字母。也就是说,在一个硬盘的三维空间里,根据前面的编号规则,我们只要知道了这个物理扇区所在的柱面、磁头和扇区的编号,就可以确定它的唯一位置,还可以通过他们的值来计算整个硬盘的总容量。计算公式如下:磁盘容量=柱面数×每柱面磁道数×每磁道物理扇区数×每物理扇区扇区字节数例如:一块硬盘有3张铝合金盘片,盘片两面都存储数据,每一面都被低级格式化为2048条磁道,而每条磁道被分割为63个物理扇区,每个物理扇区可存储512个字节,则这块硬盘的总容量为:2048×6×63×512=396361728个字节,约378MB(该例中①相关参数并非实际硬盘参数,只是为了说明原理;②这里假设一簇只包含一个扇区。特此说明。)

目前,硬盘的容量可达到几百个GB,而数据存储的级别达到了TB级。对于计量的单位,这里有必要说明一下,1Bit即存储0或1的一个二进制位,1Byte指一个字节,常用换算关系如下:


  1Byte=8bit
  1KB=210B=1024 Byte
  1MB=210KB=220B=1048576 Byte
  1GB=210MB=220KB=230B =1073741824 Byte
  1TB=210GB=220MB=230KB=240B =1099511627776 Byte
  1PB=210TB=220GB=230MB=240KB =250B =1125899906842624 Byte
  1EB=210PB=220TB=230GB=240MB =250KB =260B =152921504606846976 Byte

关于硬盘容量,我们时常会遇到这样的问题:为什么同一块硬盘,有时显示60GB,有时却只有56GB?这是计量单位不统一造成的,操作系统进行统计的时候1KB=1024 Byte,但硬盘生产厂商在计算硬盘容量时用1KB=1000Byte来计算,这就造成了上述问题,并不是硬盘中空间丢失,或是犯罪分子把空间隐藏了。

三、小结

以上内容从物理特征的角度介绍了硬盘的基本构造、工作过程和存储原理,希望对大家进一步理解电子取证工作的原则和流程,以及熟练操作取证和数据恢复软件方面能有所助益。

版权声明
本文为[osc_t6qz550e]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4416988/blog/4781022