- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5第4章调度
第4章 调 度 调度(Scheduling)问题是操作系统设计的一个中心问题。所谓调度,就是选出待分派的作业或进程。 处理机调度分为作业调度(高级调度)、进程挂起与对换(中级调度)和进程调度(低级调度)三级。 第4章 调 度 4.1 调度类型 4.2 作业调度 4.3 进程调度 4.4 调度准则 4.5 调度算法 4.6 线程调度 4.7 多处理器调度 4.8 实时调度 4.9 Linux系统进程调度 4.1 调 度 类 型 一般来说,作业从进入系统到最后完成,可能要经历三级调度: 高级调度: 又称为“作业调度”。从用户工作流程的角度。从输入的一批作业中选出若干作业,为其分配必要的内存,建立相应的用户进程和系统进程,然后将程序和数据调入内存,等待进程调度。时间上通常是分钟、小时或天。 4.1 调 度 类 型 一般来说,作业从进入系统到最后完成,可能要经历三级调度: 中级调度: 从存储器资源的角度。将进程的部分或全部换出到外存上,将当前所需部分换入到内存。(指令和数据必须在内存里才能被CPU直接访问。) 中级调度的功能是在内存使用情况紧张时,将一些暂时不能运行的进程从内存对换到外存上等待;(第5章介绍) 4.1 调 度 类 型 一般来说,作业从进入系统到最后完成,可能要经历三级调度: 低级调度: 又称为“微观调度”、“进程调度”。从CPU资源的角度。时间上通常是毫秒。因为执行频繁,要求在实现时达到高效率。 根据一定的算法,将CPU分派给就绪队列中的一个进程,执行低级调度功能的程序称做进程调度程序。 进程调度是操作系统中最基本的一种调度。调度策略的优劣直接影响系统的性能。 图: 具有三级调度队形模型 其它调度类型 按操作系统的类型分类: 批处理调度; 交互式系统调度; 实时调度; 多处理机调度; 4.2 作 业 调 度 4.2.1 作业状态 ① 提交状态 ② 后备状态 ③ 执行状态 ④ 完成状态 4.2.2 作业控制块和作业调度的功能 1.作业控制块JCB 系统为每个作业设置了一个作业控制块(JCB),它记录该作业的有关信息。 JCB是作业在系统中存在的标志。 后备作业按类型组成不同的队列,作业调度程序挑选合适的作业,放入内存运行。 4.2.2 作业控制块和作业调度的功能 图4-2 作业控制块JCB的主要内容 4.2.2 作业控制块和作业调度的功能 2. 作业调度功能: ①记录系统中各个作业的情况。 ② 按照某种调度算法从后备作业队列中挑选作业。 ③ 为选中的作业分配内存和外设等资源。(通常由存储管理与外设管理程序完成) ④ 为选中的作业建立相应的进程,并把该进程放入就绪队列中。 ⑤ 作业结束后进行善后处理工作。 4.2.2 作业控制块和作业调度的功能 作业调度主要用于批处理系统: 调度程序选择不同的作业进行合理搭配,从而使系统中各部分资源得到均衡使用; 比如I/O繁忙型作业和CPU繁忙型作业搭配,提高并行性; 3.常用作业调度算法 先来先服务法(First-Come First-Served 短作业优先法(Shortest Job First) 最短剩余时间优先法(Shortest Remaining Time Next)。 4.3 进 程 调 度 一个就绪进程如何获得CPU的控制权? 由进程调度实现; 进程调度完成一台物理的CPU转变成多台虚拟的CPU的工作; 4.3.1 进程调度的功能 (1)保存现场 (2)挑选进程 (3)恢复现场 4.3.2 进程调度的时机 系统中发生某些事件,要执行进程调度: ① 创建进程。 ② 进程终止。 ③ 等待事件。 ④ 中断发生。 ⑤ 运行到时。 4.3.3 进程调度的基本方式 1.非抢占方式(Nonpreemptive): 2.抢占方式(Preemptive): (如新进程到达、中断使阻塞进程就绪、时间片用完等) 可防止一个进程长期占用处理机; 调度更合理,但开销较大; 4.3.4 交互式系统中常用的调度算法 轮转法 优先级法 多级队列法 短进程优先法 高响应比优先法 多级反馈队列法 公平共享法等 4.3.5 两级调度模型 4.4 调 度 准 则 4.4.1 影响调度算法选择的主要因素 保证主要目标,兼顾其它目标: ① 设计目标: 批处理-资源利用率和平均吞吐量;分时系统-均衡响应时间;实时系统-对事件及时可靠的处理; ② 公平性: 对所有作业或进程公平对待,能够
文档评论(0)