• FCFS,SSTF,SCAN,FIFO,LRO考点题解


     


    四、应用题 ( 本大题共5 小题,50 分 )

    1. 假设某系统中有五个进程,每个进程的执行时间(单位:ms)和优先数如下表所示(优先数越小,其优先级越高)。

    进程

    执行时间

    优先数

       P1

       P2

       P3

       P4

       P5

    10

    1

    2

    1

    5

       3

       1

       5

       4

       2

     

     

     

     

     

     

     

    如果在0时刻,各进程按P1、P2、P3、P4、P5的顺序同时到达,请回答以下问题:(12分)

    (1)当系统采用先来先服务调度算法时:

    进程执行顺序是      p1 p2 p3 p4 p5      平均周转时间是  13.4ms    



    (2)当系统采用高优先级优先调度算法时:

    进程执行顺序是     p2 p5 p1 p4 p3    平均周转时间是        11.8ms       



     

     (3)当系统采用时间片轮转法时

    进程执行顺序是   p1、p2、p3、p4、p5、p1、p3、p5、p1、p5、p1、p5、p1、p5、 p1  平均周转时间是      9.2ms  



    2.在一个段式存储管理系统中,其段表如下表所示:

    段号

    内存起始地址

    段长

     0

     1

     2

     3

     4

       210

       2350

       100

       1350

    1938

     500

     20

    90

    590

    95

    请将下列逻辑地址所对应的物理地址填入下表中(10分):

    段号

    段内位移

    物理地址

      0

      430

     640

      1

      10

     2360

      2

      500

     段长越界

      3

      400

     1750

      5

      32

     段号越界

     


    解析:

    0段号内存起始地址为210,段内位移430<段长500,说明段长没有越界,所以物理地址为210+430=640

    1段号内存起始地址为2350,段内位移10<段长20,说明段长没有越界,所以物理地址为2350+10=2360

    2段号内存起始地址为100,段内位移500>段长90,说明段长越界。

    3段号内存起始地址为1350,段内位移400<段长590,说明段长没有越界,所以物理地址为1350+400=1750

    由于段表中没有5段号,所以段号5段号越界。


     3.设某移动头磁盘有200道,编号为0~199,磁头刚从143道完成了读写,且正向磁道号增加方向移动,对于如下访盘请求序列(磁道号):

           86,147,91,177,94,150,102,175,130

    请回答以下问题:(12分)

    (1)在FCFS调度算法下的磁头移动顺序为 143,86,147,91,177,94,150,102,175,130   ;磁头移动的总距离为565


    解析:

    百度百科

    FCFS(First Come First Served )先来先服务,英语谚语。在计算机领域中,有时被用以描述数据结构中的队列性质,类似于FIFO(先进先出)。

    任务

    在计算机并行任务处理中,被视为最简单的任务排序策略,即是无论任务大小和所需完成时间,对先到的任务先处理,后到的任务后处理。它是一种非抢占式策略。

    FCFS:先来先服务调度算法。

    磁头刚从143道完成了读写,如下访盘请求序列(磁道号):

     

           86,147,91,177,94,150,102,175,130

    那么按照FSFS算法读取顺序为:

     

          143, 86,147,91,177,94,150,102,175,130

     那么 读取86时磁头移动距离为:  143-86=57

               读取147时磁头移动距离为:147-86=61

               读取91时磁头移动距离为:  147-91=56

               读取177时磁头移动距离为:177-91=86

               读取94时磁头移动距离为:   177-94=83

               读取150时磁头移动距离为: 150-94=56

               读取102时磁头移动距离为: 150-102=48

              读取175时磁头移动距离为:  175-102=73

              读取130时磁头移动距离为:  175-130=45

    因此,磁头移动的总距离为57+61+56+86+83+56+48+73+45=565


    (2)在SSTF调度算法下的磁头移动顺序为  143,147,150,130,102,94,91,86,175,177                                ;磁头移动的总距离为     162     

    *******************************************************

    解析:

    百度百科

    SSTF

    最短寻道时间优先(ShortestSeekTimeFirst,SSTF)
     
    该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,但这种调度算法却不能保证平均寻道时间最短。SSTF算法的平均每次磁头移动距离,明显低于FCFS的距离。SSTF较之FCFS有更好的寻道性能,故过去一度被广泛采用过。
     

    SSTF:最短寻道时间优先调度算法。

    0  86  91  94  102  130  143  147  150  175  177


     磁头刚从143道完成了读写,如下访盘请求序列(磁道号):

           86,147,91,177,94,150,102,175,130

    那么按照当处于143道时,查找最短寻道时间。

    143-130=13>4=147-143

    所以下一个最短寻道时间访问的应该是147。

    这时访问磁道顺序为143,147

    同理,147-130=17>3=150-147

     这时访问磁道顺序为143,147,150

    175-150=25>20=150-130

    这时访问磁道顺序为143,147,150,130

    130-102=28<45=175-130

    这时访问磁道顺序为143,147,150,130,102

    依次类推,最后访问磁道顺序为:

    143,147,150,130,102,94,91,86,175,177

    访问147磁道距离:147-143=4

    访问150磁道距离:150-147=3

    访问130磁道距离:150-130=20

    访问102磁道距离:130-102=28

    访问94磁道距离:102-94=8

    访问91磁道距离:94-91=3

    访问86磁道距离:91-86=5

    访问175磁道距离:175-86=89

    访问177磁道距离:177-175=2

    因此,磁头移动总距离为:4+3+20+28+8+3+5+89+2=162


    (3)在SCAN调度算法下的磁头移动顺序为   143,147,150,175,177,130,102,94,91,86  ;磁头移动的总距离为  125         


     解析:

    百度百科

    SCAN:扫描调度算法(又称电梯调度算法)是计算机磁盘驱动调度的一种方法。

    实现方法:

                        扫描算法(SCAN)不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。当磁头正在由里向外移动时,SCAN算法所选择的下一 个访问对象应是其欲访问的磁道,既在当前磁道之外,又是距离最近的。这样由里向外地访问,直至再无更外的磁道需要访问时,才将磁臂换向,由外向里移动。这 时,同样也是每次选择在当前磁道之内,且距离最近的进程来调度。

    SCAN:扫描算法(SCAN)不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。

    0  86  91  94  102  130  143——> 147  150  175  177


     当处于143道时,优先考虑的是磁头的当前移动方向

    所以访问时磁头当前移动的方向优先,即

    143——>147——>150——>175——>177

    当磁头访问到177时,已经没有了更外的磁道需要访问,这时磁臂换向,然后由外向里移动。


    因此,采用SCAN调度算法磁头移动顺序为:

    143——>147——>150——>175——>177——>130——>102——>94——>91——>86

    访问147磁道距离:147-143=4

    访问150磁道距离:150-147=3

    访问175磁道距离:175-150=25

    访问177磁道距离:177-175=2

    访问130磁道距离:177-130=47

    访问102磁道距离:130-102=28

    访问94磁道距离:  102-94=8

    访问91磁道距离:94-91=3

    访问86磁道距离:91-86=5

    因此,磁头移动总距离:4+3+25+2+47+28+8+3+5=125


    4.设系统分配给某作业4个页帧使用,执行时的页面走向为:

                         1,2,3,6,4,7,3,2,1,4,7,5,6,5,2,1

    请回答以下问题:(10分)

    (1)采用FIFO页面置换算法时:

    淘汰页面的顺序为      1,2,3,6,4,7     

    缺页中断次数为      10    


    解析:

    FIFO:先进先出页面置换算法。

    算法实现:总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面进行淘汰。

    由上图可知,淘汰顺序为:1,2,3,6,4,7

    缺页次数为:10次。


    (2)采用LRU页面置换算法时:

    淘汰页面的顺序为  1,2,6,4,7,3,2,1,4, 7                                      

    缺页中断次数为     14     


     解析:

    LRU页面置换算法:最近最久未使用LRU页面置换算法,是根据页面调入内存后的使用情况进行决策的。

    算法的实现:选择最近最久未使用的页面予以淘汰。

    由于LRU算法淘汰的是上次使用距离t时刻最远的页,故需记录这个距离。


    5.一系统具有150个存储单元,在T0时刻系统按下表所示分配给3个进程。

        进程

    最大需求

    已分配

      P1

      P2

      P3

    70

    60

    60

    25

    40

    45

    对下列请求应用银行家算法分别分析判定是否安全?(6分)

    (1)第4个进程P4到达,最大需求60个存储单元,当前请求分配25个单元。试问,若系统接受该请求,处于安全状态吗?

     答:一系统具有150个存储单元,在T0时刻系统按下表所示分配给3个进程,分配第四个进程25个单元。

    那么四个进程分配完毕后,剩下可分配存储单元数为:150-25-40-45-25=15个存储单元。

    p1还需要分配存储单元数目:70-25=45

    p2还需要分配存储单元数目:60-40=20

    p3还需要分配存储单元数目:60-45=15

    p4还需要分配存储单元数目:60-25=35

    此时,系统只剩下存储单元15个,能满足的只有进程p3。

    所以系统将剩下全部15个存储单元分配给进程p3,进程p3完成后可以回收45个存储单元。

    此时系统剩余可分配存储单元为60个,可以满足进程p1,p2,p4任意一个。(所以结果不唯一)

    假设我们选择进程p2,那么分配给进程p2存储单元20个,进程p2执行完成,回收存储单元40。

    此时系统剩余可分配存储单元60+40=100个,进程p1和进程p4都可以满足。

    假设我们选择进程p1,那么分配给进程p1存储单元45个,进程p2执行完成,回收存储单元25。

    此时系统剩余可分配存储单元100+25=125

    最后选择进程p4,分配给进程p4存储单元35个,回收存储单元25.

    由上可知,当执行顺序为p3——>p2——>p1——>p4时,可以满足所有进程。

    所以是安全状态。

    (2)第4个进程P4到达,最大需求50个存储单元,当前请求分配35个单元。试问,若系统接受该请求,处于安全状态吗?

     答:一系统具有150个存储单元,在T0时刻系统按下表所示分配给3个进程,再分配第四个进程35个单元。

    那么四个进程分配完毕后,剩下可分配存储单元数为:150-25-40-45-35=5个存储单元。

    p1还需要分配存储单元数目:70-25=45

    p2还需要分配存储单元数目:60-40=20

    p3还需要分配存储单元数目:60-45=15

    p4还需要分配存储单元数目:50-35=15

    所剩下的存储单元5个不足以满足任何一个进程,因此找不到一个安全序列,所以为不安全状态。


    卷B

    二、填空题

    4.假设某程序的页面访问序列为1、2、3、4、5、2、3、1、2、3、4、5、1、2、3、4且开始执行时主存中没有硬骨头同,则在分配给该程序的物理块数是3且采用FIFO方式时缺页次数是__13   ___;在分配给程序的物理块数是4且采用FIFO方式时,缺页次数是___ 14 ___.在分配给该程序的热处理块数是3且用LRU方式时,缺页次数是_  _14___.在分配给该程序的物理块数为4且采用LRU方式是,缺页次数是___12_  ___.

     

     


     

     


    最近复习操作系统准备期末,找的经典题目,自己写的题解。

    文中有些内容为了保留原来整齐排版格式,使用了图片截图。

    交流即分享,分享才能进步!

    不足之处,还请各位前辈多多指教。

     

  • 相关阅读:
    认识正向代理与反向代理
    python中and和or的用法
    怎样查看端口的占用情况?
    配置FCKeditor
    Ant工具(二)
    myeclipse 提示错误Undefined exploded archive location&deploy project 时不能正常显示 问题的解决
    FCKediter
    Ant工具(一)
    MyEclipse 总是弹出“multiple Errors have Occurred”
    linux下svn的常用代码
  • 原文地址:https://www.cnblogs.com/xingyunblog/p/3804644.html
Copyright © 2020-2023  润新知