计算机操作系统之期末考试复习——作业调度和进程调度

作业调度和进程调度算法

  1. 先来先服务(first-come first-served,FCFS)调度算法:按照作业/进程到达的先后顺序进行服务。
  2. 短作业优先(short job first,SJF)的调度算法:最短的作业/进程优先得到服务。
  3. 高响应比优先调度算法(Highest Response Ratio Next,HRRN) :非抢占式的调度算法,只有当前运行的进程主动放弃CPU(正常/异常完成,或主动阻塞),才需要进行调度,调度时计算所有就绪进程的响应比,选响应比最高的进程上处理机。 响 应 比 = ( 等 待 时 间 + 服 务 时 间 ) / 服 务 时 间 响应比=(等待时间+服务时间)/服务时间 =(+)/

具体例题

  1. 有一个内存中只能装入两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用以优先数为基础的抢占式调度算法。有如下表所示的作业序列,表中所列的优先数是指进程调度的优先数,且优先数越小优先级越高。
    求:(1)列出所有作业进入内存的时刻以及结束的时刻。
    (2)计算作业的平均周转时间。
    计算机操作系统之期末考试复习——作业调度和进程调度_第1张图片

分析:

  1. 内存中只能装入两道作业。
  2. 作业调度采用短作业优先算法。
  3. 进程调度采用优先数为基础的抢占式调度算法。
  4. 周转时间=完成时间-到达时间
  5. 带权周转时间=周转时间/服务时间

(1)ABCD作业进入内存的时刻分别为:10:00、10:20、11:10、10:50,完成时刻:11:10、10:50、12:00、12:20。

计算机操作系统之期末考试复习——作业调度和进程调度_第2张图片
(2)作业A的周转时间:11:10-10:00=70min
作业B的周转时间:10:50-10:20=30min
作业C的周转时间:12:00-10:30=90min
作业D的周转时间:12:20-10:50=90min
平均周转时间:(70+30+90+90)/ 4=70min

  1. 假设一个系统中有5个进程,它们的到达时间和服务时间如下表所示,忽略I/O以及其他开销时间,若分别按FCFS、非抢占及抢占的短作业优先(SIF)、高响应比优先(HRRN)、时间片轮转(RR,时间片=1)、多级反馈队列调度算法(FB, 第i级队列的时间片=2i-1)以及立即抢占的多级反馈队列调度算法(FB, 第i级队列的时间片=2i-1)进行CPU调度,请给出各进程的完成时间、周转时间、带权周转时间、平均周转时间和平均带权周转时间。计算机操作系统之期末考试复习——作业调度和进程调度_第3张图片
    分析:进程调度的关键是理解和掌握调度所采用的算法,FCFS算法选择最早进入就绪队列的进程投入执行;SJF算法选择估计运行时间最短的进程投入执行,采用抢占方式时,若新就绪的进程运行时间比正在执行的进程的剩余运行时间短,则新进程将抢占CPU;HRRN算法选择响应比(响应比=(运行时间+等待时间)/运行时间)最高的进程投入执行;RR算法中,就绪进程按FIFO方式排队,CPU总是分配给队首的进程,并只能执行一个时间片;FB算法将就绪进程排成多个不同优先权及时间片的队列,新就绪进程总是按FIFO方式先进入优先权最高的队列,CPU也总是分配给较高优先权队列上的队首进程,若执行一个时间片仍未完成,则转入下一级队列的末尾,最后一级队列则采用时间片轮转方式进行调度。
    计算机操作系统之期末考试复习——作业调度和进程调度_第4张图片
    计算机操作系统之期末考试复习——作业调度和进程调度_第5张图片

你可能感兴趣的:(计算机操作系统,操作系统,作业调度,进程调度,算法)