目录
4.1磁盘存储器
4.1.1磁盘设备的组成
4.1.2磁盘的性能指标
4.1.3磁盘的调度算法
4.1.4减少旋转延迟时间
4.1.5磁盘管理
4.1.4磁盘阵列
4.2固态硬盘(SSD)
外存储器的特点是容量大、价格低,但是存取速度慢。内存储器用于存放那些立即要用的程序和数据;外存储器用于存放暂时不用的程序和数据。
4.1磁盘存储器
4.1.1磁盘设备的组成
磁盘存储器由磁盘驱动器、磁盘控制器和盘片组成。
- 磁盘驱动器:核心部件是磁头组件和盘片组件,温切斯特盘是一种可移动磁头固定盘片的硬盘存储器
- 磁盘控制器:磁盘存储器和主机的接口,主流的标准有IDE、SCSI、SATA等。
存储区域:一块硬盘含有若干记录面,每个记录面划分若干磁道,每条磁道划分若干扇区。扇区也即磁盘块是磁盘读写的最小单位。注意物理块也即簇、页面,是操作系统定义的分配空间的最小单位,通常是多个扇区。
- 柱面数:不同记录面的同一位置编号的磁道构成一个圆柱面,柱面数表明硬盘每面盘片上有多少条磁道。
- 扇区数:表明每条磁道上有多少个扇区。
- 磁头数:如果每个盘片只有一个记录面则等于记录面数。注意说法:一个柱面有多少条磁道指的是磁头数。此外还有下图这种情况
注:柱面号在前的原因是读取连续地址磁盘块时只需改变不同盘片的磁头,而不需要移动磁头到不同柱面花费大量时间。
硬盘是机械式部件,读写操作必须一步一步来。
4.1.2磁盘的性能指标
- 道密度是沿磁盘半径方向单位长度上的磁道数。如:60道/cm
- 位密度是磁道单位长度上能记录的二进制代码位数。如:600bit/cm
- 由于每个磁道的信息量相同,所以越内侧的磁道位密度越大。
- 面密度是单位面积上记录的二进制信息量,即道密度和位密度的乘积。
- 格式化后的容量比非格式化容量要小。
- 平均寻取时间=寻道时间(磁头移动到目的磁道的时间)+旋转延迟时间(磁头定位到要读写扇区的时间)+传输时间(传输数据所花的时间),寻道时间和旋转延迟时间通常取平均值。此外可能还有磁盘控制器延迟。
- 若磁盘转速为 r(转/分钟)则转一圈的时间为 60/r 秒,我们平均旋转半圈就能定位到目标扇区,则旋转延迟时间为 60/r/2 秒
- 假设磁道上有 1000 个扇区,则传输时间为 60/r/1000 秒
- 假设每条磁道容量为N字节,则数据传输率为=rN/60 (字节/秒)
注:4.1.3、4.1.4、4.1.5是操作系统中的I/O管理的内容。
4.1.3磁盘的调度算法
操作系统采用不同的磁盘调度算法会影响寻道时间。
先来先服务算法(FCFS)。
最短寻找时间优先算法(SSTF)。只选择眼前最优,未必是整体最优。可能产生饥饿现象。
扫描算法(SCAN),又称电梯算法。只有磁头移动到最外侧磁道的时候才能往内移动,移动到最内侧磁道的时候才能往外移动。
LOOK调度算法:优化扫描算法在一侧已经没有磁道请求时立即改变磁头移动方向。
循环扫描算法(C-SCAN)。优化扫描算法在各位置响应频率不一致的问题,返回时直接快速移动至始端而不处理任何请求。
C-LOOK调度算法。
题目中无说明时SCAN指的是LOOK调度算法。
4.1.4减少旋转延迟时间
4.1.5磁盘管理
- 计算机启动时需要运行一个初始化程序(自举程序),用于启动操作系统。
- 主存中的ROM有一个自举装入程序BIOS,磁盘在分区前会有主引导记录MBR,分区后会有一个活动分区用于装入引导记录PBR。
- 逻辑格式化时操作系统会判断坏块(坏扇区),维护一个坏块链表。操作系统会保留一些好的“备用扇区”用于替换坏块,这种操作对操作系统是透明的(不可见)。
4.1.4磁盘阵列
RAID(Redundant Array of Inexpensive Disks,廉价冗余磁盘阵列)是将多个独立的物理磁盘组成一个独立的逻辑盘,数据在多个物理盘上分割交叉存储、并行访问,具有更好的存储性能、可靠性和安全性。
提高RAID可靠性的措施主要是对磁盘进行镜像处理(冗余)和奇偶校验。
4.2固态硬盘(SSD)
固态硬盘是一种基于闪存技术的存储器,闪存芯片代替传统旋转磁盘中的机械驱动器。
- SSD以页为单位读/写;磁盘是以块(扇区)为单位读写。
- 以块为单位擦除
- 如果要写的块内其他页有数据,则不能写入,需要将块内其他页全部复制到一个新的(空的)块中,在写入新的页
- 支持随机访问
- 是一种半导体存储器ROM 。
固态硬盘作为ROM的一种,保留了随机写比读慢的多的特点。