之前笔者和大家讨论过FCFS(先来先服务算法)和SSTF(最短路径搜索算法),那么今天我们就来讨论在计算机磁盘驱动调度当中,一种比较重要的算法,叫做SCAN(扫描调度算法),又叫做电梯算法
谈到电梯,大家往往会想到现实中的电梯,既能够上升又能够下降
那电梯的工作原理是什么呢
不知道大家有没有观察过生活中的电梯,它们往往是先沿着一个方向不停的到底,直到那个方向没有人按电梯按钮之后,再回过头来
比方说,当前电梯在10楼,然后有人先按11楼、12楼、21楼,后来有人按了9楼、8楼、1楼,电梯如果是先往上走,那么它就要先到11楼,再到12楼,最后到21楼,等21楼完成后,再回到9楼、8楼、1楼
那么,这也同样适用于计算机中的磁盘驱动调度
我们来看道例题
这道题已经明确告诉我们,目前磁头位于100道,向磁道序号增加的方向移动
那么,从100开始,就得往增加的方向移动,下一号也就是110
所以A、B两个选项可以率先排除了
之后,磁头不停的移动,直到180为止,磁道序号增加的方向已经没有数据了,便会向磁道序号减少道方向移动,率先移动到的就是95
综上所述,这道题的答案显而易见,选C
最后做个总结,SCAN算法的磁头移动规律和电梯的移动轨迹真的很像,但是会对最近扫描过的数据不公平,比方说95就不公平了,但是却克服了不少缺点,总的来说有利有弊