深入浅出计算机组成原理学习笔记:第四十五讲

在1991年,我刚接触计算机的时候,很多计算机还没有硬盘。整个操作系统都安装在5⼨或者3.5寸的软盘里。不过,很快⼤部分计算机都开始⽤上了直接安装在主板上的机械硬盘。
到了今天,更早的软盘早已经被淘汰了。在个人电脑和服务器里,更晚出现的光盘也已经很少用了。

机械硬盘的生命力仍然非常顽强。无论是作为个人电脑的数据盘,还是在数据中心里面用作海量数据的存储,机械硬盘仍然在被大量使用。不仅如此,
随着成本的不断下降,机械硬盘还替代掉了很多传统的存储设备,比如,以前常常⽤来备份冷数据的磁带。

那这一讲里,我们就从机械硬盘的物理构造开始,从原理到应用剖析一下,看看我们可以怎么样用好机械硬盘。


一、拆解机械硬盘

1、盘面

1、定义

2、材质

3、数据存储在哪里

4、什么控制盘面旋转

5、硬盘购买指标

2、磁头

 

1、磁头的作用

 

2、一个片面上通常有几个磁头?

3、一块硬盘有多少个盘面?

3、悬臂

 

1、从原理方面

2、盘面像什么?

4、数据是怎么存到盘片上

我们刚才说的一个磁道,会分成一个一个扇区(Sector)

上下平行的一个一个盘面的相同扇区呢,我们叫作一个柱面(Cylinder)

1、步骤一

2、步骤二

3、平均延时

4、平均寻道时间

 

二、PartialStroking:根据场景提升性能

1、缩短行程

 

2、缩短行程

最极端的情况是不寻道

只用1/2或者1/4的磁道

3、在当时那个更划算

软件层面

硬件层面

结论

 

在2000-2010年这10年间,正是这些奇思妙想,让海量数据下的互联网蓬勃发展起来的。在没有SSD的硬盘的时候,聪明的工程师们从硬件到软件,
设计了各种有意思的方案解决了我们遇到的各类性能问题。而对于计算机底层知识的深入了解,也是能够找到这些解决办法的核心因素。

总结延伸


好了,相信通过这一讲,你对传统的HDD硬盘应该有了深入的了解。我们来总结一下。


机械硬盘的硬件,主要由盘面、磁头和悬臂三部分组成。我们的数据在盘面上的位置,可以通过磁道、扇区和柱面来定位。实际的一次对于硬盘的访问,
需要把盘面旋转到某一个“几何扇区”,对准悬臂的位置。然后,悬臂通过寻道,把磁头放到我们实际要读取的扇区上。


受制于机械硬盘的结构,我们对于随机数据的访问速度,就要包含旋转盘⾯的平均延时和移动悬臂的寻道时间。通过这两个时间,我们能计算出机械硬盘的IOPS。

7200转机械硬盘的IOPS,只能做到100左右。在互联网时代的早期,我们也没有SSD硬盘可以用,所以工程师们就想出了Partial Stroking这个浪费存储空间,
但是可以缩短寻道时间来提升硬盘的IOPS的解决方案。这个解决方案,也是一个典型的、在深入理解了硬件原理之后的软件优化⽅案。

posted @ 2019-08-16 18:21  活的潇洒80  阅读(516)  评论(0编辑  收藏  举报