硬盘是电脑主要的存储媒介之一。根据硬盘的读写方式和存储方式不同,当前主流的硬盘可以分为固态硬盘(SSD硬盘)、机械硬盘(HDD 硬盘)两种。由于固态硬盘存在价格昂贵、容量较小和一旦损坏难以修复等特点,当前市场主要流行的依然是机械硬盘。当然,在高端计算机中通常会结合两种硬盘来获取更好的性能,这里暂且不提。故而本博客主要对机械硬盘的结构和原理进行讲解。

硬盘是由很多的盘片组成,而其存储信息的方式就是通过盘片表面的磁性物质来存储数据。把盘片放在显微镜下放大,可以看到盘片表面是凹凸不平的,凸起的地方被磁化,代表数字 1,凹的地方没有被磁化,代表数字 0,因此硬盘可以通过二进制的形式来存储表示文字、图片等的信息。

机械硬盘主要由磁盘、磁头、盘片主轴、控制电机、磁头控制器、数据转换器、接口、缓存等几个部分组成。

所有的盘片都固定在一个旋转轴上,这个轴即盘片主轴。所有的盘片之间是绝对平行的,且在每个盘片的盘面上都有一个磁头来对磁盘上的数据进行读写操作。所有的磁头连在一个磁头控制器上,由磁头控制器负责各个磁头的运动,磁头可沿盘片的半径方向移动,实际上磁头是围绕固定点做圆周移动(如果有兴趣可以通过上面的磁盘结构图自己看,这里不加以解释),而且传统的硬盘中由于所有磁头都固定在同一个控制器上,所以每个磁头同一时刻是同轴的,即从正上方往下看,所有磁头任何时候都是重叠的,在这种情况下每一时刻只有一个磁头能够进行数据的读取。当硬盘启动时盘片在主轴的带动下以每分钟数千转到上万转的速度在高速运转,而磁头在控制器的控制下固定在某个位置上对经过其下方的磁盘区域进行信息的读写。

由前面的描述可知,硬盘的数据主要存储在许多盘片上的磁性物质上,而这些这些信息是通过磁头在某一点上对其下方的转动的磁片进行写入的,故而这些信息以一条条围绕主轴的同心圆细线的形式存在。为了方便描述与管理,我们把这些存储信息的同心圆细线称为磁道,将盘片中用于记录信息的面称为盘面(当前主流的硬盘一般每个盘片的两个面都会用于记录信息,所以每个盘片对应两个盘面。当然,也有部分只有一面用于记录信息的,在此暂不赘述),而多个盘片上半径相同的磁道称为柱面,为了更好的对磁盘资源进行过滤,我们有将每个磁道划分为均匀的几段称为扇区。

下面对几个名词的定义是作用进行解析:

盘面:硬盘的盘片一般用铝合金材料做基片,硬盘的每一个盘片的两个面都可以用于记录信息,一般每个盘面都会得到利用,都可以存储数据,成为盘面。当然,也有的硬盘为了简化磁头结构或其他原因只利用其中一个面来记录信息,这样每个盘片就只对应一个盘面。每一个盘面都有一个盘面号,按顺序从上至下从 0 开始编号。在硬盘系统中,盘面号又叫磁头号,因为每一个盘面都有一个对应的读写磁头。

磁道:磁盘在格式化时被划分成许多用于记录信息的同心圆,这些同心圆轨迹叫做磁道。磁道从外向内从 0 开始顺序编号,硬盘的每一个盘面有 300-1024 个磁道,新式大容量硬盘每面的磁道数更多,信息以脉冲串的形式记录在这些轨迹中,这些同心圆不是连续记录数据,而是被划分成一段段的圆弧。这些圆弧的角速度一样,由于径向长度不一样,所以线速度也不一样,外圈的线速度较内圈的线速度大,所以同样的转速度下,外圈在同样时间段里,划过的圆弧长度要比内圈划过的圆弧长度大。磁道是看不见的,只是盘面上以特殊形式磁化了的一些磁化区,在磁盘格式化时就已规划完毕。

柱面:所有盘面上半径相同的磁道构成的一个圆柱面,即在磁盘上所有与主轴距离相同的磁道成为柱面。之所以给出柱面这一概念主要是为了提高磁盘的读写速率。在机械硬盘中数据的读取是依靠磁头来进行的,每个盘面对应一个磁头,而这些磁头通常被固定在同一转轴上,同时这些磁头从磁盘的上方看是重合的,也就是说所有磁头同一时间处于同一半径的磁道上。而由哪个磁头进行数据的读取则由对应的控制系统来进行电子切换,这个过程相对于将磁头移动的相邻的磁道是一个极快的过程,为了提高数据的读/写速率,数据的存储一般是按照柱面的顺序来的,具体的做法就是数据先存储在某一柱面的第一个磁道上,之后建数据存储到同一柱面的第二个磁道上,一直到同一柱面的所有磁道都使用完后才转到下一柱面进行读/写操作。

扇区:扇区是磁盘读写的基本单位,每个扇区包括 512 个字节的数据和一些其他信息,这些信息包含存储数据地址的标识符(盘面号,柱面号,扇区号等)和用于保护数据的纠错码(ECC)。在传统磁盘上,一般盘面上每一个磁道所对应的扇区是相同的,由于盘面上的磁道大小是不均匀的,其中越靠近主轴的磁道长度越小,越远离主轴的磁道长度越大,所以这样的分配方式会造成“大面积小数据”的浪费情况,为了避免这种情况很多硬盘采用同密度盘片,所以半径不同的磁道划分成出来的扇区数量也是不同的,磁道越长所包含的扇区也也就也多。关于扇区号,目前主要有两种定义规则,其中一种是每个磁道拥有自己的扇区号,在每个磁道中扇区号都是从0开始增加的,之后通过CHS(也称3D)寻址方式来对对应扇区进行访问,而另一种则是对硬盘上所有的扇区进行统一编号,其编号规则为:LBA(逻辑扇区号)=磁头数 × 每磁道扇区数 × 当前所在柱面号 + 每磁道扇区数 × 当前所在磁头号 + 当前所在扇区号 – 1 。这两种方式中,前者适合对每个磁道所拥有的磁道相同的传统磁盘,而后者时候采用同密度盘片的磁盘。

机械硬盘的存储结构及原理相关推荐

  1. 硬件(磁盘):机械硬盘内部硬件结构和工作原理详解

    从理解磁盘IO开始 主轴让磁盘盘片转动,然后传动手臂可伸展让读取头在盘片上进行读写操作.每个盘片有两面,都可记录信息,所以一张盘片对应着两个磁头. 磁盘物理结构如下图: 硬盘的外部物理结构 一般硬盘正 ...

  2. 机械硬盘内部硬件结构和工作原理详解

    硬盘的外部物理结构 一般硬盘正面贴有产品标签,主要包括厂家信息和产品信息,如商标.型号.序列号.生产日期.容量.参数和主从设置方法等.这些信息是正确使用硬盘的基本依据,下面将逐步介绍它们的含义. 硬盘 ...

  3. hashmap储存有向图_HashMap的存储结构及原理

    1.HashMap的数据结构(HashMap通过hashcode对其内容进行高速查找,是无序的) 数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端. 数组 :数组的存储区是连续的,占 ...

  4. 固态硬盘为什么比机械硬盘快

    固态硬盘为什么比机械硬盘快 前言 一.机械硬盘的工作原理 二.固态硬盘工作原理 三.机械硬盘与固态硬盘比较的弊端 前言 随着固态硬盘的容量越来越大,价格也越来越便宜,人们都在逐步将自己的机械硬盘更换为 ...

  5. 固态硬盘与机械硬盘两者有什么区别?应该怎样选择呢?

    目录 一.前言 二.固态硬盘(SDD) 三.机械硬盘(HDD) 四.两者区别(帮助挑选) 五.总结 一.前言 在了解两种硬盘的区别之前,我们首先来了解一下计算机的工作原理: 计算机从硬盘中读取数据,之 ...

  6. 机械硬盘的内部结构与读写访问特性

    1.机械硬盘的实物内部结构及原理 上图是一个2.5英寸的.消费级的机械硬盘,是SATA接口的.SATA接口有两个插口:数据插口和电源插口. 机械硬盘内部最主要的结构是机械臂和盘片.盘片从表面看好像是一 ...

  7. 计算机科学与技术要机械硬盘,机械硬盘避坑大法:一文搞懂PMR和SMR有什么区别...

    原标题:机械硬盘避坑大法:一文搞懂PMR和SMR有什么区别 存储市场上一直存在固态硬盘(SSD)和机械硬盘(HDD)的竞争.论综合性能,SSD远高于HDD,是大家选购存储设备时的理想选择.早期消费级S ...

  8. 机械硬盘和固态硬盘有什么区别?如何使用?

    案例:怎么区分机械硬盘和固态硬盘? [我知道硬盘可以用来储存数据,但我不知道机械硬盘和固态硬盘的区别,有没有小伙伴可以详细解释一下.] 硬盘可以用来储存数据,常见的硬盘有两种,分别是机器硬盘和固态硬盘 ...

  9. 服务器10TB硬盘如何分区合理,机械硬盘有必要分区吗_机械硬盘分区有没有必要的图文教程...

    机械硬盘大家都不陌生了,一般我们的电脑在安装系统时会给机械硬盘分区,现在的机械硬盘越来越大,有的机械硬盘甚至达到了10TB的容量,那么机械硬盘有必要分区吗?我们应该给机械硬盘进行分区操作吗?小编今天就 ...

最新文章

  1. IROS2021|DLL直接点云定位:一种基于点云地图的航空机器人定位方法
  2. python中的接口
  3. 手把手教你学Dapr - 3. 使用Dapr运行第一个.Net程序
  4. 信息学奥赛一本通 2071:【例2.14】平均分
  5. C++奥赛一本通递推题解
  6. Day13_定时器中断处理
  7. html创建qq注册页面,用javascript制作qq注册动态页面
  8. 数据分析 超市条码_数据分析入门:商品分析是什么?该怎么做?
  9. unity3d利用pano2VR实现全景视图效果
  10. 超信Linux版(超信 for Linux下载) v1.3.0官方版
  11. win7系统 修改默认管理员用户名administrator方法
  12. 加拿大鹅“跌倒”,波司登“吃饱”?
  13. V853 替换开机启动LOGO
  14. Nginx网站服务与LNMP架构部署(详解)
  15. python预测药_Python数据分析实例-药品销售分析
  16. 链游知识4:以太坊浏览器的使用
  17. 徐松亮常用开发软件与网站
  18. 问题 H: 活字印刷
  19. jacoco 原理篇
  20. 字体大宝库:20款超细英文字体免费下载

热门文章

  1. 基于CentOS的分布式文件系统GlusterFS安装、集群搭建和运维
  2. Markdown 实现页内跳转
  3. 看板管理解析:如何通过看板提升项目管理效率?
  4. magaface 人脸识别测试
  5. MobileFaceNets: Efficient CNNs for Accurate RealTime Face Verification on Mobile Devices
  6. Linux SPI驱动框架(3)——设备驱动层
  7. 开源WebGIS开发2——开发环境(IntelliJ IDEA)
  8. docsify-写一个自己的网站
  9. 无刷直流电机虚拟中性点分析
  10. C# Task阻塞方式和延续操作