全国统一服务电话 400-108-0268

关于霄云科技

存储系统的硬件层是怎样的情况

发布时间:2021-12-22 来源:本站

在工程架构领域里,存储是一个非常重要的方向,这个方向从底至上,我分成了如下几个层次来介绍:


硬件层:讲解磁盘,SSD,SAS, NAS, RAID等硬件层的基本原理,以及其为操作系统提供的存储界面;

操作系统层:即文件系统,操作系统如何将各个硬件管理并对上提供更高层次接口;

单机引擎层:常见存储系统对应单机引擎原理大概介绍,利用文件系统接口提供更高级别的存储系统接口;

分布式层:如何将多个单机引擎组合成一个分布式存储系统;

查询层:用户典型的查询语义表达以及解析;

主板结构

在进入对硬件层的分析前,让我们来看看电脑主板上各个原件之间的关系。

存储系统的硬件层是怎样的情况

上图展示了主板上主要元件的结构图,以及他们之间的总线连接情况。核心连接点是北桥和南桥两块芯片。

其中北桥比较吊,连接的都是些高速设备。一般来说只连接CPU,内存和显卡几种设备。不过近些年也出现了PCIE2.0的高速接口接入北桥,使得一些符合标准的设备就可以接入北桥。

而南桥就相对搓了,他负责接入所有低速设备。什么USB,鼠标,磁盘,声卡等等都是接在南桥上的。而不同的设备用途和协议都有很大不同,所以设计了不同的交互协议。由于历史原因,不同设备传输介质可能都不一样,导致总线上布线十分复杂。所以到目前为止,主流设备都已经统一成为了PCI总线,大家一起用这条总线。

读写过程

我们来模拟一下CPU要从磁盘读入一份数据的过程:

CPU发出一条指令说哥要准备读数据了

这条指令依次通过系统总线,桥间总线,PCI总线传递到了磁盘控制器。控制器收到指令了之后知道这是一次读请求,且读完了是否要发中断的信息。做好一些准备工作,等待读取数据。

CPU再发出一条指令说要读取的逻辑地址

这条指令还是通过系列总线发给磁盘控制器之后。磁盘控制器就忙活了,查找逻辑快对应的物理块地址,查找,寻道等工作,就开始读取数据了。

CPU再发出一条指令说读入内存的地址

当收到这条指令之后,CPU就不管了,他告诉一个叫DMA的总管,说接下来就靠你了。DMA设备会接管总线,负责将磁盘数据通过PCI总线,桥间总线,内存总线同步到内存指定位置。

写操作的过程是类似的,就不累述了。

上面我们只是讲解了在主板上数据流转的过程,但是还有一个黑盒,就是磁盘控制器。这哥们到底是怎么管理的各个磁盘呢?在下一节我们将为你描述。

存储介质原理

上面讲了计算机读取数据的过程。这一章我们来大概说一下常见的存储介质的存储原理。

磁带

磁带就跟小时候听歌的时候的磁带类似。一条黑色带子上面有很多小的磁性粒子,根据粒子的南北级来判定0/1。

软盘

软盘比磁带要先进一点,记录数据的原理是一样的,只是可以随机读取,而磁带只能顺序读取。

硬盘

硬件原理

如果说前两个都是古老的东西,技术含量一般的话。硬盘就是一个很有技术含量的存储设备了,主要包含三大设备:

电机

电机的目的是控制磁臂精准定位到磁道,一个磁道可能很小,要精准定位到哪个地方是高科技。

盘面

盘面主要有两点。一点是基板要足够光滑平整,不能有任何瑕疵;一点是要将磁粉均匀的镀到基板上。这里有两个高科技,一个是磁粉的制造,一个是如何均匀的镀到基板上。

磁头

磁头的主要难点是要控制好跟盘面的距离,跟软盘类似,硬盘也是通过修改磁粉的南北极来记录数据的。如果隔得太远,就感知不到磁性数据了,隔得太近呢,又可能把盘面刮到。当然0/1的表示并不是只有一个磁粉,而是一片区域的磁粉。

现在磁盘都是利用空气动力学,将磁头漂浮在盘面上面一点距离来控制磁头和盘面的距离。但是当硬盘停止工作不转的时候,磁头就肯定掉在盘面上了,所以一般盘面靠近圆心的地方一般都有一块没有磁粉的地方,用于安全停靠磁头。当硬盘要开始工作的时候,磁头在同心圆里面起飞,飞起来了之后再移动到其他地区。

不过我一直在想,是否可以有这样的技术,能在磁臂上装多个磁头,每个磁道对应一个,停止工作的时候就把磁臂固定在某个高度让他不挨着盘面,这样是不是能大大提高硬盘的读写效率,因为这样减少了寻道的时间。

关键词标签:海量存储 文件存储 分布式存储 国产存储 私有云 企业级存储 软件定义存储

返回列表
上一篇:GPU存储性能怎样去获得
下一篇:云端对象存储和块存储你都了解吗