zoukankan      html  css  js  c++  java
  • 处理机调度算法

    抢占式与非抢占式调度算法

    为照顾紧迫性作业,使之在进入系统后便获得优先处理,引入了最高优先权优先(FPF)调度算法。它分为两种:

    (一)非抢占式优先权算法;

    (二)抢占式优先权调度算法。

    1.非抢占式优先权算法:系统一旦把处理机分配给就绪队列中优先权最高的进程后,该进程便一直执行下去,直至完成。

    2.抢占式优先权调度算法:系统同样把处理机分配给优先权最高的进程,使之执行.但在其执行期间,只要又出现了另一个其优先权更高的进程,进程调度程序就立即停止当前进程(原优先权最高的进程)的执行,重新将处理机分配给新到的优先权最高的进程。


    假定执行作业Job1~Job5,作业号即为其到达顺序,依次在时刻0按照序号1/2/3/4/5进入单处理系统

    作业号 执行时间 优先权
    Job1 10 3
    Job2 1 1
    Job3 2 3
    Job4 1 4
    Job5 5 2

    1)采用FCFS,SJF,非抢占优先权调度算法,各作业的执行顺序。

    (2)计算每种情况下作业的平均周转时间和平均带权周转时间。

    .............................................................................................................

    (1)FCFS:执行顺序   Job1→Job2→Job3→Job4→Job5

             SJF:执行顺序   Job2→Job4→Job3→Job5→Job1

    (2)FCFS:

                        平均作业周转时间: T=10+11+13+14+19)/5=13.4ms

                        平均带权作业周转时间:W=(10/10+11/1+13/2+14/1+19/5)/5=1.82

            SJF:

                        平均作业周转时间:T=(1+2+4+9+19)/5=7ms

                        平均带权作业周转时间:W=(1/1+2/1+4/2+9/5+19/10)/5=0.43


    在道数不受限制的多道程序系统中,作业进入系统的后备队列时立即进行作业调度。

    作业名 进入后备队列的时刻 执行时间/min 优先数
    Job1 8:00 60 1
    Job2 8:30 50 2
    Job3 8:40 30 4
    Job4 8:50 10 3

    (1)采用高优先权,SRTF调度算法,各作业的执行顺序。

    (2)计算每种情况下作业的平均周转时间和平均带权周转时间。

    .........................................................................................................

    (1)执行顺序:Job1→Job4→Job3→Job2

    (2)SRTF调度算法:

                平均周转时间:T=((60-0)+(150-30)+(100-40)+(70-50))/4=65min

               平均带权周转时间:W=((60-0)/60+(150-30)/50+(100-40)/30+(70-50)/10)/4=0.55

  • 相关阅读:
    CentOS下部署Django线上运行环境
    MAC 下安装mysqlclient、Homebrew踩坑记
    kali基本命令(-)
    关于Django出现“__str__ returned non-string (type NoneType)”错误的处理
    deepin升级时出现“E: 无法获得锁 /var/lib/apt/lists/lock
    RCNN训练过程
    Jupyter Notebook中使用虚拟环境
    pytorch(cuda)的安装
    conda的基本操作
    第一周、深度学习概念
  • 原文地址:https://www.cnblogs.com/lxz6666/p/10631046.html
Copyright © 2011-2022 走看看