操作系统 --磁盘的组织与管理(十五)

一、磁盘的结构  --图


  • 盘面(Platter):一个磁盘有多个盘面;
  • 磁道(Track):盘面上的圆形带状区域,一个盘面可以有多个磁道;
  • 扇区(Track Sector):磁道上的一个弧段,一个磁道可以有多个扇区,它是最小的物理储存单位,目前主要有 512 bytes 与 4 K 两种大小;
  • 磁头(Head):与盘面非常接近,能够将盘面上的磁场转换为电信号(读),或者将电信号转换为盘面的磁场(写);
  • 制动手臂(Actuator arm):用于在磁道之间移动磁头;
  • 主轴(Spindle):使整个盘面转动。

 

如何在磁盘中 读/写数据?

需要把 “磁头” 移动到想要读/写的扇区所在的磁道。通过磁头臂让磁盘转起来,让目标扇区从磁头下面划过,才能完成对扇区的读/写操作

磁盘的物理地址

磁盘的分类

二、磁盘调度算法 --图


1、先来先服务算法(First Come First Served)

根据进程请求磁盘的先后顺序进行调整

优点:公平,如果请求访问的磁道比较集中的话,算法性能还算过得去

缺点:如果有大量进程竞争使用磁盘,请求访问的磁盘很分散,则FCFS性能很差,寻道时间 长

2、最短寻找时间优先(SSTF, Shortest Seek Time First)

3、扫描算法

4、Look调度算法

三、减少磁盘延迟时间的方法


读写一个磁盘块的时间的影响因素有:

  • 延迟时间(将目标扇区转到磁头下面所化的时间)
  • 寻道时间(制动手臂移动,使得磁头移动到适当的磁道上)
  • 传输时间  (读/写 数据花费的时间)

其中,寻道时间最长,因此磁盘调度的主要目标是使磁盘的平均寻道时间最短。

交替编号

做法:让编号相邻的扇区在物理上不相邻

原理:读取完一个扇区后需要一段时间处理才可以进行读入下一个扇区

错误命名

做法:让相邻的盘面的扇区编号“错位”

原理 :与 “交替编号的原理相同”。错位命名法可降低延迟时间

为什么 磁盘的物理地址是 (柱面号,盘面号,扇区号) 而不是(盘面号,柱面号,扇区号)?

答:读取连续地址的磁盘块时,采用前者的地址结构,可以减少磁头移动消耗的时间

四、磁盘的管理


猜你喜欢

转载自blog.csdn.net/qq_40949465/article/details/89035171