前言:本人从事存储研发多年,最近整理存储系列相关文档,敬请期待。html
大规模存储系统中目前主要以SATA硬盘为主,SSD盘为辅。因此本文主要介绍存储介质和磁盘寻址方式及原理。编程
记录的是模拟信号,流式记录,无扇区概念。优化
也称做,软磁盘。spa
记录的是数字信号,0和1,N极1,S极0。被设计成块式,而不是流式。因此须要进行扇区划分等操做。设计
也称做,硬磁盘。htm
一个硬盘一般由2-14片不等的盘片组成的一个盘组。本文主要介绍的对象。对象
即SSD,由控制单元和存储单元(FLSH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的彻底相同,在产品外形和尺寸上也彻底与普通硬盘一致。blog
固态硬盘具备传统机械硬盘不具有的快速读写、质量轻、能耗低以及体积小等特色,同时其劣势也较为明显。其价格仍较为昂贵,容量较低,一旦硬件损坏,数据较难恢复等;而且亦有人认为固态硬盘的耐用性(寿命)相对较短。接口
(图片来自http://www.javashuo.com/article/p-gnthvqcv-dy.html)图片
再对硬盘从逻辑上进行介绍:
每一个盘片都有上下两个面,即上、下盘面。每一个盘面都有一个读写磁头(又叫磁头臂),每一个盘面都有一个盘面号,因此又叫磁头号。
磁头号由上而下从0开始编号,也就是说,n个盘片就有2*n的磁头数。硬盘的盘片组在2-14片不等,一般2-3个盘片,即4-6个磁头数。
每一个盘面都是由同心圆组成,这些同心圆轨迹就叫磁道。
磁头起初都停在盘片的最内圈,这是一个特殊的区域,不存听任何数据,称为启停区或者着陆区(Landing Zone)。
启停区外就是数据区。
在最外圈,即离主轴最远的地方是0磁道。有一个0磁道检测器,来完成硬盘的初始定位。系统启动时,老是默认从0磁盘读取BIOS程序来运行。
每一个盘面通常有30-1024个磁道,新式大容量硬盘磁道数更多。
这些同心圆的角速度同样,因此线速度不一样,因此外圈数据的读写速度比内圈快。
全部盘面上的同一磁道,在垂直方向上造成一个圆柱。每一个圆柱上的磁头由上而下从0开始编号(上面已说起)。而有多少个磁道即有多少个柱面。
将每一个环形磁道等距离切割,造成等长度的弧形。每段圆弧叫作一个扇区。扇区从1开始编号,最大分红63段。
每一个扇区的数据做为一个单元同时读出或写入,是读写的最小单元。因此一个扇区内的数据是连续流式记录的。
低级格式化:划分磁道和扇区的过程叫作低级格式化,通道在硬盘出厂的时候就已经格式化完毕了。这是物理的。
高级格式化:对磁盘上所存储的数据进行文件系统的标记,而不是对扇区和磁道进行磁盘标记。这是逻辑的,即平时咱们所进行的格式化操做。
数据读写过程和寻道:数据的读写按柱面进行,即磁头读写数据时首先在同一柱面内从0磁头开始进行操做,当读写完该磁道数据后,再依次向下在同一柱面的不一样盘面(磁头)上进行操做。只有同一柱面全部的磁头所有读写完成后磁头才转到下一个柱面。由于选取磁头只需通过电子切换便可,而选取柱面则必须经过机械切换,即寻道。
CHS编址:早期,扇区的地址,由Cylinder柱面、Header磁头、Sector扇区三者组成,简称CHS编址。由CHS能够计算到扇区的位置。
LBA编址: Logic Block Address,逻辑区块地址,也叫扇区编号。线性的地址,从1开始无限增长。再也不划分柱面和磁头号,这些数据由硬盘自身保留。目前广泛采用这种抽象简单的编制方式,便于编程。
ZBR 区位记录:Zoned-bit recording,根据等密度记录方式,将同心圆磁道分区,分红几个环形;内环磁道的扇区数目较少,外环磁道的扇区数目较多。从概念上看,属于物理优化,逻辑编址依然能够采用LBA方式。
参考资料:《大话存储II》和百度百科。