Linuc学习之硬盘基础

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35603331/article/details/79512954

一.硬盘组成

每个SATA硬盘存储数据的地方都由盘面,扇区,磁道三部分组成。
每个盘面均有一个磁头,所以盘面数=磁头数

每个扇区实际上是一个扇环,每个磁道就是由若干这样的扇环组成的。

二.硬盘寻址方式

  • 硬盘有两种寻址方式,分别是CHS寻址(三维地址模式)和LBA寻址(线性寻址)。
  • CHS寻址的原理是通过磁头数,柱面数,扇区数这三个标识来寻址。当时硬盘的每个磁道上的扇区数相同,但是每个扇区的容量也相同,导致外磁道扇区的磁密度明显低于内磁道容量,造成很大的浪费。为了解决这一问题,人们引入了线性寻址。
  • 线性寻址的原理是把所有的物理扇区按顺序从小到大进行编号,从0开始,这样只要一个序号就可以确定一个唯一的扇区。通过使用该技术,人们得以采用等密度结构生产磁盘,在每个扇区容量相同的情况下,外磁道的扇区数量自然多于内磁道了。
  • 需要注意的是C/H/S中的扇区编号从“1”至“63”,而LBA方式下扇区从“0”开始编号,所有扇区顺序进行编号。

三.寻址方式兼容

  • 为了保证使用线性寻址硬盘的设备也能兼容一些受CHS寻址方式硬盘影响的软件,硬盘控制器内部安装了一个地址翻译器,将C/H/S参数翻译成LBA地址。
  • 这种翻译的原理并不复杂。首先,系统写入数据时,按照从柱面到柱面的方式,并且总是从每个柱面的第一磁头的第一个扇区开始,然后是第二个磁头的第一个扇区,直到下一个柱面。以此类推。所以在对物理扇区编制LBA地址时,也遵循这种规律。从第一个柱面第一个磁头第一个扇区开始,编号分别为0,1,2…根据这种规则,找到翻译方法并不难。

四.0磁道位置

在老式硬盘中,由于不同半径的磁道长度不同,而每个磁道上的扇区数量却相同,这就导致不同磁道上的扇区面积也不同。
不过每个扇区的容量是一样的,老式硬盘是512字节,新式硬盘是4096字节(当然新式硬盘反馈给操作系统的信息还是每个扇区512字节,只不过在磁盘内部操作时,每个扇区是按照4096字节来存储的)。
由于每个扇区容量相同,长度却不同,那么很显然越靠近边缘的扇区,存储密度越小。存储密度越小(磁密度越小),那么数据安全性就高。
由于MBR在0磁道第一个扇区,为了确保MBR的安全性,便将0磁道设置为最外围的磁道了。

猜你喜欢

转载自blog.csdn.net/qq_35603331/article/details/79512954