- 1、本文档共60页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、处理机的多级调度策略
第三章 处理机的调度与死锁
处理机调度是操作系统的主要功能之一,它的实现策略决定了操作系统的类型,其调度算法的优劣直接影响整个系统的性能。
处理机调度的任务是选出待分派的作业或进程,为之分配处理机。
一般来说,处理机调度可分为三个级别,分别是高级调度、中级调度和低级调度。
1、高级调度又称作业调度,作业就是用户程序及其所需的数据和命令的集合,作业管理就是对作业的执行情况进行系统管理的程序的集合。作业调度程序的主要功能是审查系统是否能满足用户作业的资源要求以及按照一定的算法来选取作业。
2、引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量,使得暂时不运行的进程从内存对换到外存上。
3、低级调度又称进程调度,其主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。进程调度是操作系统中最基本的一种调度,其调度策略的优劣直接影响整个系统的性能。
几点说明:
在多道批处理系统中,既有高级调度,又有低级调度,也可以采用中级调度。
在分时系统中,一般没有高级调度,只有低级调度,一般会采用中级调度
在实时系统中,只有低级调度
在支持多道程序的操作系统中,一般存在进程调度
有的操作系统采用中级调度,有的操作系统没有中级调度
二、处理机的调度队列模型
1、仅有进程调度的处理高度队形模型(分时系统中)
2、具有两级调度的处理机调度队列模型(多道批处理系统中)
该模型与上一模型的主要区别在于如下两个方面:
(1)就绪队列的形式。
(2) 设置多个阻塞队列。
3、具有三级调度的处理机调度队列模型(多道批处理和分时系统中)
三、调度性能的衡量指标
对批处理系统应尽量提高各种资源的利用率和增加系统的吞吐量
分时系统应保证对用户的响应时间的要求
实时系统必须及时和可靠的处理
衡量作业调度和进程调度性能的指标如下:
(1)CPU利用率(2)吞吐量--单位时间内CPU完成作业的数量。(3)周转时间--从作业提交到作业完成的时间间隔。(4)等待时间—作业或进程从进入系统到被调度并开始执行所经历的时间
(5)响应时间--从提交第一个请求到产生第一个响应所用的时间
(6)平均带权周转时间
作业i周转时间
作业i执行时间
作业总数
作业调度:就是要按一定的策略选取一个或多个作业,为它们分配必需的资源(内存空间、I/O设备等),使它们能够并发执行。
作业调度的必要条件是:系统现有尚未分配的资源可以满足该作业的资源需求。
一、批量型作业的组织
1、作业申请(作业情况、资源要求)
2、作业实体(作业操作说明书、源程序或目标模块程序、数据集合、修改信息(可没有)
3.2 调度算法——作业调度
二、批处理系统中作业的状态及其转换
四种状态:提交、后备、执行和完成
3.2 调度算法——作业调度
三、实现作业状态转换的程序
1、SPOOLing系统程序
包括输入程序、输出程序、井管理程序(读子程序、写子程序)
2、作业调度程序
作业调度程序负责作业从“后备状态”到“执行状态”以及从“执行状态”到“完成状态”的转换,作业调度程序为作业分配的是一台虚拟的逻辑处理机。
作业调度:按照某种调度算法从后备作业队列中挑选一个/几个作业进入内存,参加运行。同时分配资源,做好运行前的准备。
3.2 调度算法——作业调度
3、进程调度程序
进程调度程序的主要任务:实现进程从“就绪状态”到“运行状态”的转变。它总是按照确定的调度算法从就绪队列中选择一个进程,让它占有CPU运行,进程调度程序为作业分配的是一台真实的物理处理机。
4、交通控制程序
交通控制程序负责进程状态的转换和进程之间的通信。
3.2 调度算法——作业调度
四、作业调度所需的数据结构及其组织
1、作业控制块
2、作业后备队列
3.2 调度算法——作业调度
五、作业调度算法的设计原则
面向用户的准则:周转时间短;响应时间快;截止时间的保证;优先权准则
面向系统的准则:系统吞吐量高;处理机利用率好;各类资源的平衡利用
3.2 调度算法——作业调度
六、常用的作业调度算法
先来先服务调度算法(FCFS)
特点:简单容易实现,有利于长作业,但不利于短作业
3.2 调度算法——作业调度
2、最短作业优先调度算法(SJF)
特点:易于实现,会使系统平均周转时间最短,系统吞吐量大。
但忽视了作业的等待时间,不利于长作业,会出现“饿死”现象。
3.2 调度算法——作业调度
3、响应比高者优先(HRRF)
特点:算法较为复杂,每当调度作业时都需要进行响应比的计算。但它既照顾了用户作业到来的先后,又考虑了要求系统服务时间的长短。
3.2 调度算法——作业调度
3.2 调度算法——作业调度
例子:
分析
在多道批处理系统中,有下列1、2、3、4四个作业,提交时间分别是6
文档评论(0)