一个故事看懂机械硬盘原理

Posted 编程技术宇宙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个故事看懂机械硬盘原理相关的知识,希望对你有一定的参考价值。

前情回顾:《第二回:内存揭奥秘,总线解玄机》

上回说到,阿飞从混沌中醒来,意外发现自己的大脑被数据化存储到了一台计算机内存中,阿飞想逃离这里,内存却告诉他,如果不赶紧把自己持久化存储起来,一旦计算机关闭他就会消失。在内存帮助下,阿飞总算来到了硬盘上。

第三回:数据何所依,硬盘话原理

突然,一个巨大的东西从远处飞了过来,在阿飞头顶不远处的地方快速掠过,吓得阿飞下意识一闪。

阿飞来不及看清,那东西已经远去。

往后的时间里,每隔一会儿,那东西就出现一次,非常有规律,时间久了,倒也习以为常了。

阿飞开始仔细打量起这个新的地方,头顶的方向一片漆黑,只有那东西出现的时候有短暂的光亮。而脚下的方向,阿飞发现了无数的小颗粒依次排列着,由近及远,望不到头,有点像内存中排列整齐的电容单元,仔细看去却又完全不同。

图片

“这些小颗粒是什么东西?”,阿飞小声嘀咕着。

“新来的不清楚吧,那是金属磁粒”,旁边不远处,有人跟他搭上了话。

“谁在说话?”

“我是一个文件,在你隔壁扇区呢”,那声音说到。

“你好,我确实刚刚来到这里,刚刚你说那是金属磁粒?什么是金属磁粒?”,阿飞问到。

“那是机械硬盘的盘面上用来存储数据的东西,咱们的数据就是靠它们存储表示的,金属磁粒是有极性的,多个磁粒组成一个单元格,用来表示一个比特位,单元格中的磁粒方向朝上,就表示1,方向朝下,就表示0”

图片

图片来源:B站UP主——硬件茶谈

阿飞恍然大悟,“原来是这样,难怪以前把硬盘又叫磁盘”,又接着问道:“那为什么不是左右,而是上下呢?”

“还真让你说对了,早期的硬盘就是水平式记录数据的,不过现在的硬盘都改成了垂直式记录数据了,因为这样更省空间,单位面积可以容纳的单元格更多了,硬盘的存储容量也提升了很多”,隔壁的文件说到。

阿飞点了点头,原来这机械硬盘是这样存储数据的。

“唉,你怎么知道的这么多?”,阿飞有些好奇。

话音刚落,那个巨大的东西又从头顶掠过。

“这是个什么东西?怎么老是在我头顶转悠?”,阿飞小声嘀咕着。

“那是磁头

图片

“磁头?”

“没错,磁头是硬盘读写数据的触手,硬盘要读取或者写入数据,都靠它来完成”

“那它怎么飞来飞去的?一会儿又来一下,一会儿又来一下的”

“那可不是它在飞,而是咱们脚下的这块盘片在转动导致的。”

“我们在转动?”,阿飞有些不敢相信。

“没错,这块硬盘每分钟可以旋转7200转呢!”

“这么快?我怎么感觉不到?”

“地球还在转动呢,人类不也一样感受不到吗”,那文件笑着说到。

正说着,那个叫磁头的东西又转了过来,而这一次,磁头靠得比以往更近,正好从阿飞的正上方掠过,这一次阿飞看清楚了,在磁头末端的地方,有两个装置,一大一小。

眼看就要撞上了,阿飞吓得闭上了眼睛。

“已经走了,瞧把你吓得”,隔壁那文件扑哧一笑。

阿飞睁开了眼睛,那东西果然已经不见了踪迹。

“刚刚发生了什么,距离我好近,我还以为要撞到我,吓死我了”,阿飞说到。

“不用担心,刚才是磁头在读取你的数据呢,虽然距离很近,只有几纳米,但绝对不会撞上来的,那样这硬盘就算毁了。”

“读我的数据?我怎么什么感觉也没有?它怎么读的”

“磁头的尾端有两个东西,一大一小,分别是写磁头和读磁头,悬浮在硬盘盘面几纳米的地方,读磁头扫过的时候,通过电磁技术可以检测到下方单元格中磁粒的极性,就能分辨是0还是1了”

图片

“那两个东西,我刚才看到了,原来那就是读写磁头。你说的数据读取过程听起来有点像留声机把唱片上的纹路转变成声音的过程”,阿飞说到。

“唉,你这理解的不错,就是那么个意思”

“读我知道了,那如何写入数据呢?”,阿飞追问到。

“旁边的写磁头可以通过磁场改变单元格中金属磁粒的极性,将其设定为1或者0”

“妙啊!”,阿飞不禁感叹到,人类真是聪明,工业技术真是强大,能在这样尺度的空间里发明出这么精巧的玩意。

“你怎么懂的这么多啊,什么都知道”

“因为我是一个PDF文档,内容讲的就是《机械硬盘存储原理》,我说的这些都记录在文档中呢”

“那你再给我说说,这硬盘这么大,一眼望不到头,它怎么知道我在哪个位置?”

“这硬盘容量虽大,但上面的存储位置都是经过统一的编址,想找到你轻而易举。”

“哦,具体怎么实现的?”

图片

“硬盘由多个盘面叠在一起,盘面是个圆形,从里到外被划分了许多圈,也就是磁道,每个磁道又被划分了许多个扇形区域,也就是扇区,硬盘的读写都是以扇区为单位进行的,一般情况下一个扇区的容量是512字节。”

图片

“唉,等一下,既然是扇形,那外圈的扇形面积比内圈大,如果每个扇区都是固定存储512字节,那外圈扇形不是浪费了不少面积吗?”,阿飞问到。

图片

“你脑子转得还挺快,不错,早期的硬盘就是这样的,每个磁道的扇区数都是一样的,这样寻址计算起来方便,但这样就会导致内圈的扇区小,数据密度大,而外圈的扇区大,数据密度小。不过现在的硬盘为了提升容量,不会允许这种事情发生,不同磁道的扇区数不再一致,内圈面积小,扇区数少,而外圈面积大,扇区数目就会更多一些”

阿飞陷入了思考,脑子里开始想象那一圈又一圈的磁道。

那文件接着说道:“读写数据的时候,硬盘的驱动程序通过计算将会知道数据在哪个盘面,在哪个磁道以及所在的扇区编号。先通过磁头臂将磁头移动到对应的磁道上方,这个过程叫做寻道,接着等待对应扇区旋转到磁头下方就可以开始读写数据了”。

“一个扇区才512字节,如果超出怎么办呢,像我有20多MB,该怎么存储呢?”

“那就需要占据多个扇区,这个问题,该交给文件系统来解决,具体我就不太懂了”

图片

刚说完,那东西又一次来到了阿飞的正上方。

“奇怪,怎么又来读我的数据”,阿飞有些纳闷儿。

“阿飞,阿飞~”,正想着,头顶的方向传来了当初那个神秘老者的声音。

“你总算又出现了,我到底该怎么做才能离开这里?”,阿飞着急的问到。

那老者并未理会阿飞的问题,只是淡定的说到:“你已经被杀毒软件发现了,很快就会被杀软从硬盘中清除,如果是那样,你就永远也醒不过来了”

阿飞心头一紧,原以为来到硬盘就安全了,没曾想还没缓过劲来,又被杀毒软件盯上,更可气的是自己居然被当作了病毒。

“那我该怎么办?快告诉我”

“藏起来”,老者说到。

“藏起来?怎么藏起来?”

这一次,阿飞没有等来回答,老者再一次消失的无影无踪。

想知道后续吗,欢迎大家留言分享转发,点赞破百,开更下一回:文件系统的故事···

系列回顾

《第二回:内存揭奥秘,总线解玄机》

《第一回:天才闯秘境,绝地寻生机》

以上是关于一个故事看懂机械硬盘原理的主要内容,如果未能解决你的问题,请参考以下文章

一个故事看懂机械硬盘原理

一个故事看懂机械硬盘原理

CPU:一个故事看懂DMA

一个故事看懂Python的GIL原理

一个故事看懂Python的GIL原理

一个故事看懂内存条工作原理