第7课作业调度算法导论.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统 第7课 作业调度算法 内容回顾:进程和线程间的几点不同 地址空间:不同进程的地址空间相互独立,进程各线程共享一个地址空间。 通信关系:不同进程间使用系统提供的进程通信机制;同一进程各线程直接通过访问共享的进程地址空间来实现。 调度切换:不同进程间切换要花很大开销,同一进程的线程切换开销很少。 内容回顾:用户与操作系统的程序接口 操作系统管理了计算机的软硬件资源,当用户要使用这些资源时必须通过操作系统来实现,操作系统通过系统调用命令来响应用户的请求,这就是操作系统提供的程序接口。 操作系统预先编写了很多不同功能的子程序,这子程序完成相应资源的具体管理,用户在自己的程序里通过调用这些子程序来得到系统提供的相应功能服务。这些子程序就是“系统功能调用程序”,简称“系统调用”。 内容回顾 特权指令与非特权指令 把CPU的指令分为两类:一类是操作系统和用户都能使用的指令,称为“非特权指令”;一类是只能由操作系统使用的指令,称为“特权指令”。 管态与目态 计算机可以执行这些“特权指令”的状态,我们称之为“管态”。管态下可以执行包括特权指令在内任何指令。 当系统处于只能执行用户自己程序而不能执行特权指令的状态时,我们称之为“目态”。CUP处于“管态”还是“目态”由硬件系统自动识别。 内容回顾 访管指令 用户程序在执行的过程中,通过系统提供的访管指令由“目态”转为“管态”,从而实现特殊指令的执行,而达到实现系统调用的目的。 访管指令是一条非特权指令,功能是执行它就会产生一个软中断,促使中央处理机由目态转为管态,进入操作系统 。 内容回顾:作业 作业:指用户要求计算机系统做的一个计算问题或一次事务处理的完整过程。 从作业提交给系统,到作业运行完毕被撤消,是一个作业的生命期。在这期间,作业随着自己的推进及环境变化,状态也在不断变化。 内容回顾:作业的生命期 作业的四个基本状态 后备作业 内容回顾:作业调度 按某种规则从后备作业队列里挑选作业进入内存,参与对处理机的竞争,称为作业调度,它由作业调度程序完成。所 采用的规则,称作业调度算法。 处理机调度 高级调度(作业调度) 低级调度 (进程调度) 今日内容 选择作业调度算法要考虑的要素 作业调度原则 衡量作业调度算法优劣的指标 调度算法的详细讲解 先来先服务作业调度算法 短作业优先作业调度算法 响应比高者优先作业调度算法 选择作业调度算法要考虑的要素 设计目标 作业调度算法要与系统的整体设计目标一致,如批处理系统应考虑的是提高计算机效率和增加系统的吞吐能力;分时系统应考虑的是对用户的请求响应时间;实时系统应考虑信息的准确性以及保证及时响应。 选择作业调度算法要考虑的要素 资源利用率 均衡的资源利用率是评价系统性能优劣的重要指标。在选择作业调度算法时,在考虑系统设计目标的前提下,应最大限度地发挥各种资源的效能,注意考虑系统资源的均衡使用,使“I/O繁忙”的作业与“CPU繁忙”的作业搭配调度,例如将科学计算型(CPU型)作业和数据处理型(输入输出型)作业搭配运行就是一种方法。 选择作业调度算法要考虑的要素 作业的周转时间 设法缩短作业的周转时间以应保证提交的作业在规定的截止时间内完成,提高衡量调度性能的指标 大多数操作系统都采用折中方案,尽量选择算法比较简单的调度算法。 作业调度原则 尽可能使后备作业队列中每个作业都得到公平对待,避免一个作业无限期地延迟得不到执行。 使进入内存中的作业均衡地使用系统各种资源,避免出现有的资源空闲,有的资源被争抢的局面。 尽可能提高吞吐能力,在单位时间内为多个作业提供服务。 衡量作业调度算法优劣的指标 CPU利用率 好的算法应尽可能地提高CPU利用率。 CPU利用率=CPU有效工作时间/CPU总的运行时间 吞吐量 指单位时间内平均完成的作业数量。 吞吐量=完成的作业道数/完成的时间 作业周转时间 作业周转时间是指一个作业从提交到完成总共花费的时间 作业周转时间=作业完成时间-作业提交时间 作业周转时间=作业运行时间+作业等待时间 对于一批n个作业而言,它们的“平均周转时间” T 应该是: T=( T1 + T2 + … + Tn ) / n 先来先服务作业调度算法 以作业进入后备队列中的先后次序作业选择作业的依据。也就是说哪个作业在后备队列中等待的时间最长,它就是下次调度选中者。但前提是这个作业的资源需求要得到满足,否则就要被推迟选中 例:有3个作业,所需CPU时间如下表所示。按1、2、3的顺序,同时提交给系统,采用先来先服务的作业调度算法。求每个作业的周转时间及它们的平均周转时间。 例:有3个作业,所需CPU时间如下表所示。按1、2、3的顺序,同时提交给系统

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档