聊城大学计算机学院计算机操作系统课件 第3章(2).ppt

聊城大学计算机学院计算机操作系统课件 第3章(2).ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 处理机调度和死锁 作业从进入系统并驻留在外存的后备队列上开始,直至作业运行完毕,可能要经历下述三级调度。 1. 高级调度/ 作业调度(job scheduling) 2. 低级调度/进程调度(process scheduling) 1)非抢占方式(Non-Preemptive Mode) 2)抢占方式(Preemptive Mode) 3. 中级调度(Intermediate-Level Scheduling) 存储器的对换功能 二、调度算法 1. 先来先服务(FCFS)调度算法(作业调度、进程调度) 2. 短作业(进程)优先(SJF/SPF)调度算法(作业调度、进程调度) 3. 高优先权调度(HPF)算法(作业调度、进程调度) 4. 高响应比优先(HRRF)调度算法(作业调度) 5. 时间片轮转(RR)算法(进程调度) 6. 多级反馈队列(MFQ)调度算法(进程调度) 几种常见调度算法比较见下表所示: 三、常用的几种实时调度算法 根据确定实时任务优先权方法的不同,可形成以下两种常用的实时调度算法: 1. 最早截止时间(EDF)优先算法。EDF算法如何确定任务的优先权?或者说它是如何保证满足各任务对截止时间的要求的。 2. 最低松弛度优先(LLF)算法。LLF算法如何确定任务的优先权?在什么情况下,一个进程应抢占被另一个进程占用的CPU。 四、死锁的基本概念 1. 死锁的定义:多个进程在运行过程中因争夺资源而造成的一种僵局,若无外力作用,这些进程都将无法向前推进。 2. 产生死锁的原因 (1)竞争资源 (2)进程推进顺序非法 3. 产生死锁的必要条件 (1) 互斥条件(Mutual Exclusion condition) (2) 请求和保持条件(Request and hold condition) (3) 不剥夺条件(Non preemptive condition) (4) 环路等待条件(Loop waiting condition) 五、处理死锁的基本方法 1. 预防死锁 摒弃“请求和保持”条件 摒弃“不剥夺”条件 摒弃“环路等待”条件 2. 避免死锁 银行家算法避免死锁 3. 死锁的检测与解除 当系统资源都为单体资源类时,若图中出现环路,则必存在死锁。 在系统资源为多体资源类时,图中出现环路,系统不一定死锁。 系统存在死锁,则资源分配图中一定出现环路。 4.鸵鸟策略 典型问题分析 1. n个进程共享m 个同类资源,若每个进程都需要用该资源,而且每个进程对该类资源的最大需求量之和小于m+n。说明该系统不会因竞争该类资源而阻塞。 10、在银行家算法中,若出现下述的资源分配情况 问:1)该状态是否安全? 2)若进程p2提出request(1,2,2,2)后,系统能否将资源分配?为什么? 11、有一个具有两道作业的批处理系统,作业调度采用短作业优先调度算法,进程调度采用以优先数为基础的抢占式调度算法,如表所示的作业序列(表中所列作业优先数即为进程优先数,数值越小优先级越高) 作业执行时间 作业名 到达时间 估计运行时间 优先数 A 10:00 40分 5 B 10:20 30分 3 C 10:30 50分 4 D 10:50 20分 6 1)列出所有作业进入内存时间及结束时间。 2)计算平均周转时间 解答: 各作业进入内存的时间和结束时间见表: 作业名 进入内存时间 结束时间 A 10:00 11:10 B 10:20 10:50 C

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档