请简述设备分配过程 二、假定有一个具有200个磁道(0-199磁道)的移动头磁盘,在完成了125磁道的请求后,当前正在磁道143处为一个请求服务。若请求队列请求的读写磁道为: 86,147,91,177,94,150,102,175,130,对于下列每种磁盘调度算法FCFS,SSTF,SCAN,C-SCAN,求磁头总寻道长度、平均寻道长度各是多少?
时间: 2024-04-03 15:31:42 浏览: 100
一、设备分配过程:
设备分配是指操作系统为进程分配所需的资源,其中包括CPU、内存、I/O设备等。设备分配过程主要包括以下几个步骤:
1. 请求资源:进程向操作系统提出请求所需的资源,包括设备名称、数量等。
2. 分配资源:操作系统根据请求的资源类型、数量等信息进行资源分配,如果资源已经被占用,则进程等待。
3. 占用资源:进程获得资源后,开始使用该资源进行相应的操作。
4. 释放资源:进程使用完资源后,释放该资源,使其可以被其他进程使用。
二、磁盘调度算法:
1. FCFS(先来先服务):按照磁盘请求的先后顺序进行服务,没有优先级的概念。
2. SSTF(最短寻道时间优先):选择距离当前磁道最近的请求进行服务,每次选择完后重新计算距离。
3. SCAN(扫描):按照一个方向进行磁盘寻道服务,直到该方向的终点,然后改变方向,继续服务,直到服务完所有请求。
4. C-SCAN(循环扫描):与SCAN类似,但是在一个方向的终点时,直接跳到另一个方向的起点,然后继续服务。
三、解题过程:
1. FCFS算法:
磁头总寻道长度 = |143-86| + |86-147| + |147-91| + |91-177| + |177-94| + |94-150| + |150-102| + |102-175| + |175-130|
= 1029
平均寻道长度 = 磁头总寻道长度 / 请求的磁道数 = 1029 / 9 ≈ 114.33
2. SSTF算法:
按照距离当前磁道最近的请求进行服务,每次选择完后重新计算距离。
首先服务请求147,然后是150、130、175、177、94、91、102、86。
磁头总寻道长度 = |143-147| + |147-150| + |150-130| + |130-175| + |175-177| + |177-94| + |94-91| + |91-102| + |102-86|
= 278
平均寻道长度 = 磁头总寻道长度 / 请求的磁道数 = 278 / 9 ≈ 30.89
3. SCAN算法:
按照一个方向进行磁盘寻道服务,直到该方向的终点,然后改变方向,继续服务,直到服务完所有请求。
在本题中,当前正在磁道143处,向磁道0的方向服务,直到磁道0,然后改变方向,服务到磁道199。
服务请求86、0、91、94、102、130、147、150、175、177、199。
磁头总寻道长度 = |143-86| + 86 + |91-0| + |94-91| + |102-94| + |130-102| + |147-130| + |150-147| + |175-150| + |177-175| + 199-177|
= 1214
平均寻道长度 = 磁头总寻道长度 / 请求的磁道数 = 1214 / 10 = 121.4
4. C-SCAN算法:
与SCAN类似,但是在一个方向的终点时,直接跳到另一个方向的起点,然后继续服务。
在本题中,当前正在磁道143处,向磁道0的方向服务,直到磁道0,然后跳到磁道199的起点,服务到磁道86。
服务请求86、91、94、102、130、147、150、175、177、199、0。
磁头总寻道长度 = |143-86| + |91-86| + |94-91| + |102-94| + |130-102| + |147-130| + |150-147| + |175-150| + |177-175| + |199-177| + 199
= 1234
平均寻道长度 = 磁头总寻道长度 / 请求的磁道数 = 1234 / 11 ≈ 112.18
综上所述,FCFS算法的平均寻道长度最大,SSTF算法的平均寻道长度最小,SCAN算法和C-SCAN算法的平均寻道长度相对较大。
阅读全文