关于作业调度算法_第1页
关于作业调度算法_第2页
关于作业调度算法_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关于作业调度算法 在计算机操作系统教材中,介绍了作业调度算法和进程调度算法。其中作业调度算法主要有先来先服务法FCFS、短作业优先法SJF、最高响应比优先法HRN、定时轮转法和优先数法。在进程调度算法中主要介绍了先来先服务法FCFS、轮转法RR、多级反馈轮转法和优先数法。 需要指出的是:(1)在作业调度和进程调度中同时出现的算法,如FCFS、RR、优先数法,其使用原理是基本相同的;(2)作业调度算法和进程调度算法应严格与存储管理中的“请求淘汰换页算法”相区别,注意不要混淆。 调度算法举例:【例1】下表给出作业l,2,3的提交时间和运行时间。采用先来先服务调度算法和短作业优先调度算法,试问作业调

2、度次序和平均周转时间各为多少?(时间单位:小时,以十进制进行计算。)作业号提交时间运行时间1230.00.41.08.04.01.0分析 解这样的题关键是要根据系统采用的调度算法,弄清系统中各道作业随时间的推进情况。我们用一个作业执行时间图来形象地表示作业的执行情况,帮助我们理解此题。采用先来先服务调度算法,是按照作业提交的先后次序挑选作业,先进入的作业优先被挑选。然后按照“排队买票”的办法,依次选择作业。其作业执行时间图如下: 作业作业3作业2作业1 0 0.4 1.0 8.0 12.0 13.0 时间 作业提交时间 各作业陆续完成时间采用短作业优先调度算法,作业调度时根据作业的运行时间,优

3、先选择计算时间短且资源能得满足的作业。其作业执行时间图如下: 作业作业3作业2作业1 0 0.4 1.0 8.0 9.0 13.0 时间 作业提交时间 各作业陆续完成时间 由于作业1,2,3是依次到来的,所以当开始时系统中只有作业1,于是作业1先被选中。在8.0时刻,作业1运行完成,这时系统中有两道作业在等待调度,作业2和作业3,按照短作业优先调度算法,作业3只要运行1个时间单位,而作业2要运行4个时间单位,于是作业3被优先选中,所以作业3先运行。待作业3运行完毕,最后运行作业2。作业调度的次序是1,3,2。另外,要记住以下公式:作业i的周转时间Ti作业完成时间作业提交时间 系统中n个作业的平

4、均周转时间,其中Ti为作业i的周转时间。解:采用先来先服务调度策略,则调度次序为l、2、3。作业号提交时间 运行时间 开始时间 完成时间周转时间1 0.08.00.08.0 8.02 0.44.08.0 12.0 11.63 1.01.0 12.0 13.0 12.0平均周转时间T(811.612)/310.53采用短作业优先调度策略,则调度次序为l、3、2。作业号提交时间运行时间开始时间完成时间周转时间1 0.0 8.0 0.0 8.0 8.03 1.0 1.08.09.08.02 0.4 4.0 9.0 13.0 12.6平均周转时间T(8812.6)/39.53思考题1请同学们判断这句话

5、:作业一旦被作业调度程序选中,即占有了CPU。( )提示:需要清楚作业调度和进程调度的区别。【例2】在一个单道的程序设计系统中,有3个作业J1、J2、J3,它们到达输入井的时间分别为8:50、9:00、9:30,它们需要执行的时间分别为1.5小时、0.4小时、1小时。系统在10:00按响应比高者优先算法对它们进行调度,请回答:(1)作业被选中执行的次序是什么?(2)三个作业被选中时的响应比分别是多少?分析 响应比作业周转时间/作业运行时间 1作业等待时间/作业运行时间系统在10:00,计算作业的响应比:以J1为例,它的作业计算时间是1.5小时,即90分钟;J1从8:50到达输入井,在10:00

6、时刻,J1的等待时间为70分钟,因此作业J1的响应比为:170分钟/90分钟=1.77 同理,J2:160分钟/24分钟=3.5 J3:130分钟/60分钟=1.5 因此按照响应比高者优先算法,优先调度J2。在10:24,J2完成。这时计算J1、J3的响应比:J1:1(7024)分钟/90分钟=2.04 J3:1(3024)分钟/60分钟=1.9 按照响应比高者优先算法,优先调度J1。在11:54,J1完成,系统调度J3,J3的响应比为1(302490)分钟/60分钟=3.4 因此,作业被选中执行的次序是J2、J1、J3。三个作业被选中时的响应比分别是:J1,2.04;J2,3.5;J3,3.

7、4。解:(1)作业被选中执行的次序是J2、J1、J3。(2)三个作业被选中时的响应比分别是:J1,1.04;J2,2.5;J3,2.4。思考题2某作业的提交时间为10:30,需要运行的时间为1小时,假设11:00开始调度,它的响应比是 。【例3】设有进程A、B、C、D依次进入就绪队列(相隔一个时间单位),它们的优先级(优先数大的优先级较高)如下表所示:进程CPU时间优先数A203B151C84D103试问采用“先来先服务”、“静态优先数法”调度算法(注:优先数大的优先级高),选中进程的执行次序。解:采用先来先服务调度算法,按照进程进入就绪队列的先后次序占有CPU,其执行次序是A-B-C-D。采

8、用静态优先数法,进程A最先就绪,在0时刻先占有CPU运行,随后1时刻进程B进入就绪队列,2时刻进程C进入就绪队列,3时刻进程D进入就绪队列。由于采用静态优先数法,不容许随时间的推移改变进程的优先级,所以当进程A运行结束时,系统的就绪队列中有B、C、D三个进程,而进程C优先级最高,于是选中C;这样分析下去,进程的执行次序是A-C-D-B。思考题3时间片轮转调度算法是为了( )。A多个终端都能得到系统的及时响应 B先来先服务C优先级高的进程先使用CPU D紧急事件优先处理参考解答思考题1:错误。作业被作业调度程序选中,说明作业处于运行状态,即该作业进入内存并以进程的形式存在于系统中,但属于该作业的进程可能处于运行、就绪和等待状态,只有处于运行状态的进程才能占有处理机,而其余两种状态的进程并不占有处理机。作业调度和进程调度的区别:一个作业从进入系统到最后完成,一般至少要经历两级调度:作业调度和进程调度。作业调度是宏观上的高级调度,它的主要功能是根据一定的算法,从输入井中选中若干个作业,分配必要的资源,如主存、外设等,为它们建立初始状态为就绪的作业进程。进程调度是微观上的低级调度,它的主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。一般的操作系统都必须有进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论