硬盘基础知识大全
硬盘是一个计算机系统的数据存储中心,我们运行计算机时使用的程序和数据目前绝大部分都存储在硬盘上。下面就让小编带你去看看关于硬盘基础知识大全,希望能帮助到大家!
关于硬盘的一些基础认识
机械硬盘的认识
硬盘的组成
硬盘的物理结构
磁头
主要任务完成盘片上数据的读写操作,盘片在高速旋转时,磁头会飞行在盘面上方,而不是接触盘面
每个盘片的两面都会有一个磁头, 当然有的硬盘有可能只有一个磁头,磁头的编号从0开始
机械臂
使磁头部件作径向移动的装置,已完成磁道变换
盘片
含有磁性的合金盘片,用来存取写入的数据:每张盘片的容量成为单碟容量,而硬盘的容量就是所有盘片容量的总和;由于单碟容量的限制,通常一个硬盘会含有多张盘片
盘片的厚度在0.5mm左右,盘片的转速与盘片大小有关
每个盘片都会有上下两面,都可以被利用来存储数据;能存储数据的盘面成为有效盘面,每个盘面都会有一个盘面好,其和磁头编号是相对应的,从0开始编号
盘片的逻辑划分
扇区
盘片在转动时,磁头在盘面上画过的一段圆弧,称扇区,即sector
扇区并不是连续的,在磁道上被划分成一段一段的,从1开始编号
是硬盘最小的物理存取单位,每个扇区为512byte
磁道
磁盘在格式化时被划分成许多同心圆,这些同心圆叫做磁道,即track
磁道从外向内从0开始编号,盘面的容量越大,包含的磁道数越多
磁道是看不见的,只是盘面上一些被磁化的区域
柱面
所有盘面上相同编号的磁道构成的圆柱,称为柱面,即cylinder
每个柱面上的磁头由上到下从0开始编号
数据的读写是按照柱面进行的,而非按照盘面进行
柱面是分区的最小单位
柱面是所有盘片表面上到中心主轴的距离相等的磁道集合
数据的读写按柱面进行,即磁头读写数据时首先在同一柱面内从“0”磁头开始进行操作,依次向下在同一柱面的不同盘面即磁头上进行操作,只在同一柱面的所有磁头全部读写完毕后磁头才转移到下一柱面。
因为选取磁头只需要通过电子切换即可,而选取柱面则必须通过机械切换。电子切换相当快,比在机械上磁头向邻近磁道移动快的多,所以,数据的读写按柱面进行,而不按盘面进行。
一个磁道写满数据后,就在同一柱面的下一个盘面来写,一个柱面写满后,才移到下一个扇区开始写数据
硬盘容量
硬盘容量由以下技术因素决定:
记录密度:磁道一英寸的段中可以放入的位数
磁盘密度:从盘片中心出发半径为一英寸的段内可以有的磁道数
面密度: 记录密度与磁道密度的乘积
磁盘操作
磁盘用连接到一个机械臂的读写头来读写存储在磁性表面的位
通过沿着半径轴移动这个传动比,驱动器可以将读写投定位在盘面上的任何磁道上。这样的机械运动成为寻道。
一旦读写头定位到了期望的磁道上,那么当磁道上的每个为通过它的下面时,读写头可以感知到这个位的值(读),也可以修改这个位的值(写)。
有多个盘片的磁盘针对每个盘面都有一个独立的读写头,读写头垂直排列,一致行动,在任何时刻,所有的读写头都位于同一个柱面上
磁盘数据访问时间
磁盘以扇区大小的块来读写数据。对扇区的访问时间有三个主要的部分:
寻道时间:为了读取某个目标扇区的内容,机械臂首先将读写头定位到包含目标扇区的磁道上。移动机械臂所需的时间称为寻道时间。寻道时间Tseek依赖于读写头以前的位置和机械臂在盘面上移动的速度。现代驱动器中平均寻道时间通常为3~9ms,一次寻道的最大时间可以高达20ms
旋转时间:一旦读写投定位到了期望的磁道,驱动器等待目标扇区的第一个位旋转到读写头下,这个步骤的性能依赖于当读写头到达目标扇区时的盘面位置以及磁盘的旋转速度。在最坏的情况下,读写投刚刚错过了目标扇区,必须等待磁盘转一整圈
平均旋转时间是最大旋转延迟时间的一半
传送时间: 当目标扇区的第一个位位于读写头下时,驱动器就可以开始读或者写该扇区的内容了。一个扇区的传送时间依赖于旋转时间和每条磁道的扇区数目。
固态硬盘的认识
SSD是一种利用Flash芯片或者DRAM芯片作为数据永久存储的硬盘。
利用DRAM作为永久存储介质的SSD,又可称为RAM-Dsk, 其内部使用SDRAM内存条来存储数据,所以在外部电源断开后,需要使用电池来维持DRAM中的数据
现在比较常见的SSD为基于Flash介质的SSD
所有类型的ROM和Flash芯片使用一种叫做“浮动门场效应晶体管”的晶体管来保存数据。每个这样的晶体管叫做一个“cell”,即单元。
Cell
两种类型
Single Level Cell(SLC) :每个Cell可以保存1B的数据
Multi Level Cell(MLC)每个Cell可以保存2B的数据
MLC容量是SLC的两倍,但是成本与SLC大致相当。导致相同容量下的SSD,MLC芯片成本要比SLC芯片低
Cell是利用FG(Floating Gate)中的电势值来与阈值对比从而判断其表示1或者0的。
固态硬盘读写过程
从Flash芯片读取数据的过程
位线 将所有Cell串联起来的导线称为“位线”
字线 将多个并联的Cell串中相同位置的Cell水平贯穿起来的导线组称为“字线”
当需要读出某个Page时,Flash Controller控制Flash芯片将相应这个Page的字线组电势置为0,其他所有字线组的电势则升高到一个值,而这个值又不至于使电子穿过FG绝缘层到达FG
所有Cell串的位线被导通以便外接从位线上提取电势状态,而所有的字线电压被提高的Page其感应线均被断开导致感应线不能将对应的Cell的电势传递到位线上
所以此时每个Cell串的位线所体现的电势值与待读出Page中所有Cell一一对应,再通过电路将每条位线上的电势值解码成1或者0从而传输到芯片外部,放置与SSD的RAM Buffer中保存,这样完成了一个Page内容的读出
SSD的IO最小单位为1个Page
向Flash芯片中写入数据的过程
Flash芯片要求在修改一个Cell中的位的时候,在修改之前,必须先Erase掉这个Cell。
注:机械磁盘上的“数据”是永远抹不掉的,因为即使将扇区全部写入0也算是存放了数字0,也是数据。
Cell带点表示0,不带电表示1,Cell只能带负电荷,即电子,而不能带正电荷
这里的Erase动作其实就是将一大片连续的Cell一下子全部放电,这一片连续的Cell就是一个Block。即每次Erase只能一下檫除一整个Block或者多个Block,将其中所有的Cell变为1状态
但是却不能单独檫除某个或者某段Page,或者单个或多个Cell(这个是造成SSD的致命缺点的一个根本原因)
Erase完成之后,Cell中全为1,此时可以向其中写入数据,如果遇到待写入某个Cell的数据位恰好为1的时候,对应这个Cell的电路不做任何动作,其结果依然是1;
如果遇到待写入某个Cell的数据位为0的时候,则电路将对应Cell中的FG进行充电,Cell状态从1变为0,完成了写入
这个写入0的动作又叫做“Program”,即对这个Cell进行看Program
Flash芯片的通病
Erase Before OverWrite
相比机械磁盘,磁盘可以直接用刺头将对应的区域磁化成任何信号,如果之前保存的数据是1,新数据还是1,则磁头对1磁化,结果还是1;如果新数据是0,则磁头对1磁化,结果就变成了0
Flash则不然,如果要向某个Block写入数据,则不管原来Block中是1还是0,新写入的数据是1还是0,必须先Erase整个Block为全1,然后才能向Block中写入新数据。
这种额外Erase操作增加了覆盖写的开销
总的来说是这样的一种情况:如果仅仅需要更改某个Block中的某个Page,那么在Erase之前,需要将全部Block中的数据读入SSD的RAM Buffer,然后Erase整个Block,再将待写入的新Page中的数据在RAM中覆盖到Block中对应的Page,然后将整个更新后的Block写入Flash芯片
这样加大了写开销,形成了大规模的写惩罚(Write Amplification 写扩大),小块随机写IO会产生大倍数的写惩罚
Wear Off
随着FG充放电次数的增多,二氧化硅绝缘层的绝缘能力将遭到损耗,最后逐渐失去绝缘性,无法保证FG中有足够的电荷。此时,这个Cell就被宣判为损坏,即Wear Off
损坏的Cell将拖累这个Cell所在的整个Page被标记为损坏,因为SSD寻址和IO的最小单位为Page。损坏的Page对应的逻辑地址将被重定向映射到其他完好的预留Page,SSD将这些重定向表保存在ROM中,每次加电均被载入RAM以供随时查询
写惩罚大大加速Wear off,因为写惩罚做了很多无用功,增加了不必要的擦写
MLC可擦写的寿命比较低,小于10000次;SLC高一些,十倍于MLC,小于100000。
解决方法
损耗平衡
为了避免同一个Cell被高频率檫写,SSD有这样一个办法:每次针对某个或者某段逻辑LBA地址(Logical Block Address)的写都写到SSD中的Free Space中,即上一次全盘Erase后从未被写过的Block/Page中,这些Free Space已经被放电,直接写入即可
若再次遇到针对这个或者这段LBA地址的写操作,那么SSD会再次将待写入的数据重定向写到Free Space中,而将之前这个逻辑地址占用的Page标记为“Garbage”,可以回收再利用
等到Block中一定比例的Page都被标记为“Garbage”时,并且存在大批满足条件的Block,SSD会批量回收这些Block
SSD这样做就是为了将写操作平衡到所有可能的Block中,降低单位时间内每个Block的擦写次数,从而延长Cell的寿命
由于Page的逻辑地址对应的物理地址是不断被重定向的,所以SSD内部需要微环境一个地址映射表。这种设计是比较复杂的,需要SSD上的CPU具有一定的能力运行对应的算法程序。这种避免wear off 过快的重定向算法称为Wear Leveling,即损耗平衡算法
Wiper
需要了解的是,影响一块SSD寿命和写入性能的最终决定因素就是Free Space,而且是存储介质自身所看到的Free Space而不是文件系统级别的Free Space
但是SSD自身所认识的Free Space永远只会少于文件系统的Free Space ,并且只会越来越趋于0
需要文件系统来通知SSD自身的Free Space,告诉它哪些逻辑地址现在并未被任何文件或者元数据所占用,可以被擦除
所有的SSD厂商均会提供一个工具,称为“Wiper”
操作系统中运行这个工具时,此工具扫描文件系统内不用的逻辑地址,并将这些地址通知给SSD,SSD便可以将对应的Block做擦除并回收到Free Space空间内
TRIM指令
TRIM指令可以让文件系统在删除某个文件之后实时地通知SSD回收对应的空间
TRIM是ATA指令标准中的一个功能指令,在Linu__ Kernel 2.6.28中已经囊括,但是并不完善
TRIM可以使SSD起死回生,开启了TRIM支持的SSD,在操作系统TRIM的支持下,可以成功的将性能提高到相对于SSD初始化使用时候的95%以上
Delay Write 和 Combine Write
Delay Write 是一种存储系统常用的写IO优化措施。
比如有先后两个针对同一个地址的IO—–Write1,Write2,先后被控制器收到了,而在Write1尚未被写入到永久存储介质之前,恰好Write2进入,此时控制器就可以直接在内存中将Write2覆盖Write1,在写入硬盘的时候只需要写入一次即可
这样的操作减少了不必要的写
Combine Write是另一种存储系统控制器常用的写IO优化方法。
对于基于机械硬盘的存储系统,如果控制器在一段时间内收到多个写IO而这些写IO的地址在逻辑上市连续的,则可以将这些小的IO合并为针对整体连续地址段的一个大的IO,一次性写入对应的磁盘,节约了很多SCSI指令周期,提高了效率
由于SSD中的逻辑地址本来就是被杂乱地映射到可能不连续的物理地址上(这样并不影响性能),所以,SSD控制器可以整合任何地址的小块写IO成一个大的写IO而不必在乎小块写IO针对的逻辑地址是否连续
整合之后的大写IO被直接写向一个Free的Block中,这样做大大提高了效率
预留备用空间
SSD为了防止文件系统将数据写满的极端情况,SSD自己预留一部分备用空间用于重定向写
这部分空间并不通告给操作系统,只有SSD自己知道,文件系统永远也写不满SSD的全部实际物理空间
硬盘知识:硬盘的种类与作用
关于机械硬盘:
机械硬盘是传统硬盘,电脑主要的存储媒介之一。机械硬盘有不同的颜色,分别有红盘,绿盘,黑盘,蓝盘,紫盘。
机械硬盘就作为我们普通电脑里的普通硬盘。内部有磁盘,通过磁盘的高速旋转,并用相应的磁头,读取或存储数据。数据永久保存,无限复写。 不能受外界冲压、挤压或震动,轻拿轻放,携带不方便。
关于固态硬盘:
由多个闪存芯片加主控以及缓存组成的阵列式存储,属于以固态电子存储芯片阵列制成的硬盘。防震抗摔性,数据存储速度快,功耗低,噪音小,容量大,使用寿命较长等优势。
固态硬盘的存储介质分为两种,一种是来用闪存(FLASH芯片)作为存储介质,另外一种是采用DRAM作为存储介质,广泛应用于军事、车载、工控、视频监控、网络监控、网络终端等。
机械硬盘与固态硬盘的区别:
1、工作原理不同:
固态硬盘是以半导体状态做记忆介质,机械硬盘是以磁做记忆介质的。
2、读写速度差别很大:
由于固态硬盘是半导体做记忆介质的,所以比机械硬盘的读写速度快得很多。
3、安全级别相差很大:
固态硬盘是以半导体做记忆介质的,所以比机械硬盘抗震动和抗摔,完全性更高。
关于混合硬盘:
混合硬盘是机械硬盘与固态硬盘的结合体,采用容量较小的闪存颗粒用来存储常用常用文件,而磁盘才是最重要的存储介质,闪存仅起到了缓冲作用,将更多的常用文件保存到闪存内减小寻道时间,从而提升效率。但抗震性能差、单颗闪存颗粒导致擦写次数收到了严重制约等。
硬盘如何选择?固态硬盘是目前性价比最高的硬盘,因此固态硬盘受到大多数企业的偏爱。根据自己的需求来选购,注意硬盘的日常使用,避免故障发生。从而延长硬盘使用寿命。
硬盘使用小技巧:
1.使用环境要保持整洁。
2.防止碰撞、震动。
3.定期对电脑的硬件进行检查,早早排除故障。
硬盘知识分享
一、介绍
硬盘是我们熟知的电脑配件之一,简单的说就是一容量存储器,与主机通迅速度很快,成为现代电脑不可缺少的配件
由于计算机在工作CPU,输入输出设备与器之间要大量地交换数据,因此存储器的处理速度和容量,也是影响计算机整体运行速度的主要因素之一。
二、硬盘的分类
固态硬盘
固态硬盘也称作电子硬盘或者固态电子盘,是由控制单元和固态存储单元组成的硬盘。固态硬盘的介质分为两种,一种是采用闪存作为介质,另外一种是采用DRAM作为存储介质,目前绝大多数固态硬盘采用的是闪存介质。单元负责存储数据,控制单元负责读取、写入数据。由于固态硬盘没有普通硬盘的机械结构,也不存在机械硬盘的寻道问题,因此系统能够在低于1ms的时间内对任意位置单元完成输入/输出操作。
机械硬盘
机械硬盘即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。
区别:
1、速度,固态硬盘传输速度能达到500MB/s,其中读取速度达到400-600MB每秒,写入速度达到200MB每秒。而传统硬盘读取速度极限也无法超越200MB每秒,写入速度在100MB每秒左右。如果遇到非连续的散片数据,SSD能体现出极快的读写速度。而传统机械硬盘由于磁头寻道等原因,传输速度偏慢。
2、 安全,固态硬盘没有盘片,所以只要其芯片不受到外形挤压产生形变,数据就能获得安全的保存。而传统硬盘没有这一优势,一旦在高速旋转过程中盘片和磁头碰撞,甚至不合理接触,都会造成盘片受损,数据丢失。
3、 经济,在同样容量下,固态硬盘现阶段价格高于传统机械硬盘3-5倍,但是随着摩尔定律的前进,固态硬盘NAND闪存芯片密度会越来越大,则存储量越来越高,终有一天会取代传统的次存储设备。
硬盘基础知识大全相关文章:
★ 电脑硬件入门学习
硬盘基础知识大全
上一篇:硬盘使用和选购的知识
下一篇:电脑硬件知识有哪些