- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 作业调度 主要内容 作业的状态与处理流程 作业的调度 进程的调度 选择调度算法时应考虑的问题 调度算法 例:某些I/O繁忙型的进程,它们大部分时间是在等待I/O操作完成,对于这一类进程,当它们要求CPU运行时,应立即给予满足,以便让它们开始下一个I/O操作和其它计算型的进程并行工作。否则,这些I/O繁忙型的进程将长时间占据存储器,降低系统并行度。 一个行之有效的算法是在进程每次获取CPU运行后,重新指定该进程的优先级为 1/f。这里的f表示进程上次在CPU上实际运行时间与时间片之比。例如,若时间片为100毫秒,进程上次在CPU上的实际运行时间为2毫秒,则它的优称级为50;若它上次实际运行时间为50毫秒,则它的优级为2。由于I/O繁忙型的进程每次在CPU上运行的时间很短,依此算法,它们的优先级将较高,从而优先得到服务。 (3) 时间片轮转法 轮转法是最简单又最公平的进程调度算法,因此也是使用得最多的算法之一。 轮转法分配给每一进程在CPU上运行的时间长度,称之为时间片。诸进程以此时间片为限制,轮流使用CPU。如果时间片到期时,进程尚未完成运行,调度程序将剥夺它正在使用的CPU,转让给另一进程使用;如果进程在使用完它的某一时间片之前已经完成运行或已阻塞,CPU也立即转让给另一进程使用。 轮转法在实现上也很容易,调度程序只要维护一个先进先出的队列数据结构,将就绪进程排队,每当一个进程的时间片运行完后,便把它从原来的队头位置移到队尾,然后把现在处于队头位置的进程调度到CPU上运行。时间片的计数则可通过定时中断实现。 * * 主讲:房道伟 Daowei_fang@163.com 操作系统原理 在大型通用系统中,可能有数百个批处理作业存放在磁盘的作业队列中,有数百个终端同主机相联接。因此如何从这些作业中挑选作业进入主存运行、如何在作业或进程间分配处理等,问题无疑是操作系统的资源管理功能中的一个重要问题。本章主要讨论处理机分配问题,或称处理机调度。 一般来说,处理机调度可以分成三级: (1) 高级调度:又称作业调度,其主要功能是按照某种原则从磁盘某些盘区的作业队列中选取作业进入主存,并为作业做好运行前的准备工作和作业完成后的善后工作。 (2) 中级调度:它决定哪些进程被允许参与竞争处理机资源。中级调度主要只是起到短期调整系统负荷的作用,以平顺系统的操作。其所使用的方法是通过“ 挂起 ” 和“ 解除挂起 ” 一些进程,来达到平顺系统操作的目的。 (3) 低级调度:又称进程调度,其主要功能是按照某种原则将处理机分配给就绪进程。执行低级调度功能的程序称为进程调度程序,由它实现处理机在进程间的转换。它必须常驻主存,是操作系统内核的主要部分。 RUN readya blockeda readys blokeds 后备 完成 作业后备状态 执行 内存 时间片到 I/O请求 I/O完成 高级调度(作业调度) 挂起 解挂 挂起 解挂 进程调度 低级调度 中级调度 §5.1 作业的状态与处理流程 一、 作业状态 提交 收容 执行 完成 提交状态 后备状态 运行状态 完成状态 作业从提交给系统直到它完成后离开系统前的整个活动常划分为若干阶段。作业在每一阶段中所处的状况称为作业的状态。系统中的作业通常分为四种状态: (1) 提交状态:一个作业被提交给机房后或用户通过终端键盘向计算机中键入其作业时所处的状态为提交状态。 (2) 后备状态:作业的全部信息都已通过输入机输入,并由操作系统将其存放在磁盘的某些盘区中等待运行,则称为后备状态。 (3) 运行状态:作业一旦被作业调度程序先中而被送入主存中投入运行,称之为运行状态。 (4) 完成状态:作业完成其全部运行,释放出其所占用的全部资源,准备退出系统的作业状况称为完成状态。 §5.2 作业的调度 系统中往往有成百个作业被收容在磁盘输入井中,为了管理和调度作业,就必须记录已进入系统的各作业的情况。因此同进程中的情况类似,系统也为每个作业设置一个作业控制块 (记为JCB),它记录了作业的有关信息。不同系统的 JCB 所包含的信息有所不同,这取决系统对作业调度的要求。 JCB结构 见书P122 图6.8 JCB 是在作业进入系统时由 SPOOL 系统为其建立的。其内容由作业控制卡中得到。同样 JCB 也是作业存在于系统的标志,作业进入系统时,则为之建立 JCB。当作业退出系统时,则其 JCB 也被撤消。 在磁盘输入井中的所有后备作业按作业类型将它们组成一个或多个后备作业队列。所谓后备作业队列是由作业控制块 JCB 用表格或链指针组成的队列。作业队列可按优先数大小和作业到达系统的时间
文档评论(0)