- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四五章操作系统
第四章 调度与死锁
一、主要内容
1.调度的基本概念
2.几种调度算法
3.死锁
1.调度的基本概念
1.1 调度的类型
一个作业从提交直到完成,往往经历下列三种调度:
1)高级调度
又称为作业调度或长程调度。其主要任务是按照一定的原则,对外存上处于后备状态的作业进行选择。
2)中级调度
又称为中程调度。其实就是内外存对换。
3)低级调度
又称为进程调度、短程调度。
1.2 低级调度
低级调度决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。进程调度可以采用下列两种方式:
1)非抢占方式
采用这种方式时,一旦处理机分配给某进程,便让该进程一直执行,直至该进程完成或或发生某事件而被阻塞时,才让出处理机,决不允许某进程抢占已经分配出去的处理机。
2)抢占方式
a 时间片原则
b 优先权原则
c 短作业优先原则
1.3 调度队列模型
在OS中的任何一种调度,都将涉及到进程队列,由此形成了三种类型的调度队列模型。
1)仅有进程调度的调度队列模型
在分时系统中通常仅设置了进程调度,用户键入的命令和数据都直接送入内存。对于命令,由os为之建立一个进程,并将它排在就绪队列的末尾,然后按时间片轮转方式运行。
2)具有高级和低级调度的调度队列模型
与上一模型区别在于:
a 在os中不仅引入了进程调度,而且还引入了作业调度。后者从 外存的后备队列中选择一些批作业调入内存,为之创建进程后,送入就绪队列;
b 在os中设置多个阻塞队列。
3)同时具有三级调度的调度队列模型
当在os中引入中级调度后,我们可把进程的就绪状态分为内存就绪状态、外存就绪状态。类似地,也把阻塞状态进一步分成内存阻塞和外存阻塞两种状态。在调出操作的作用下,可使内存就绪变成为外存就绪、内存阻塞变为外存阻塞;中级调度的作用下,可使外存就绪变为内存就绪。
1.4 选择调度方式和算法的若干准则
选择调度方式和调度算法的准则,有的面向用户的,有的面向系统的。
1)面向用户的准则
a.周转时间短
b.响应时间快
c.截止时间的保证
d.优先权准则
2)面向系统的准则
a.系统吞吐量高
b.处理机利用率好
c.各类资源的平衡利用
2.几种调度算法
1) 先来先服务调度算法
这是一种最简单的调度算法,即按照进程进入队列的先后次序来分配处理机。先来先服务算法属于非剥夺调度方式,一旦一个进程占有处理机就一直进去下去,直到该进程完成其工作,或因等待某一事件不能继续执行时,才释放处理机。采用这种方式,若一个运行时间长的作业先占有了处理机,则会使一些晚到的、运行时间短的作业等待的时间过长,引起短作业用户的不满。因此常作为一种辅助调度算法使用。
2) 短作业/进程(SJF/SPF)优先算法
该算法是指短作业或短进程优先调度算法,是选择就绪队列中估计运行时间最短的进程进入执行。它即可采用抢占方式也可采用非抢占方式。由于估计的运行时间不一定准确,因而它不一定能真正做到短作业优先。
3)高响应比优先调度(HRRN)算法
在批处理系统中,如果能为每个作业引入动态优先权,并使作业的优先级随着等待时间的增加而以速率a提高,则长作业在等待一定时间后,必然有机会分配到处理机。该优先权的变化规律可描述为:
优先权=(等待时间+要求服务时间)/要求服务时间
由于等待时间与服务时间之和,就是系统对该作业的响应时间,故该优先权又相当于响应比Rp.
Rp=(等待时间+要求服务时间)/要求服务时间=响应时间/要求服务时间
4)最高优先权优先调度算法
这是一种最常用的进程调度算法,即把处理机分配给优先权最高的进程。进程的优先权用于表示进程的重要性及运行的优先性。通常分为:静态优先权和动态优先权。
静态优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。确定静态优先权的依据有进程的类型、进程所使用的资源、进程的估计运行时间等因素。
动态优先权是指在创建进程时,根据系统资源的使用情况和进程的当前特点确定一个优先权,在进程运行中再根据情况的变化调整优先权。一般根据进程占有cpu时间的长短、进程等待cpu时间的长短等因素确定。占有处理机时间愈长,则优先权越低,等待时间越长,优先权越高。
5) 时间片轮转调度算法
在这种调度算法中,系统将所有就绪进程按到达时间的先后次序排成一个队列。进程调度程序总是选择队列中的第一个进程执行,且仅能执行一个时间片。在
您可能关注的文档
最近下载
- 中国行业标准 YY 9706.274-2022医用电气设备 第2-74部分:呼吸湿化设备的基本安全和基本性能专用要求.pdf
- 中秋博饼规则.doc VIP
- (人教2024版)英语七年级上册全册语法总复习(知识点+练习) 学生版+解析版_可搜索.pdf VIP
- 机械制图课件断面图.ppt VIP
- 《中外历史纲要(下)》填空.pdf VIP
- 高中政治2024届高考复习《逻辑与思维》真题练习(选择题+主观题)(附参 .pdf VIP
- 2025年咸阳市社区工作者计划招聘412人考试备考题库及答案解析.docx VIP
- 2025-2030中国生物可吸收输尿管支架行业市场发展趋势与前景展望战略研究报告.docx VIP
- 保健品专卖店管理制度.docx VIP
- 2025年高级审计师《高级审计实务》考试题库 .pdf VIP
文档评论(0)