第三章处理机调度与死锁讲述.ppt

  1. 1、本文档共83页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Chapter3 处理机调度与死锁 §3.1 处理机调度的基本概念 §3.2 调度算法 §3.3 实时调度 §3.4 产生死锁的原因和必要条件 §3.5 预防死锁的方法 §3.6 死锁的监测与解除 §3.1 处理机调度的基本概念 在多道程序系统中,一个作业被提交后,必须经过处理机调度后,方能因获得处理机而执行。 对于批量型作业而言,通常需要经历作业调度(高级调度)和进程调度(低级调度)两个过程后,方能获得处理机。 对于终端型作业,则通常只须经过进程调度。在较完善的操作系统中,往往还设置了中级调度。 对于上述的每一级调度,又都可采用不同的调度方式和调度算法。本节主要是对处理机调度的基本概念做较详细的阐述。 §3.1.1 高级、中级和低级调度 高级调度 又称为作业调度或长程调度(Long-Term scheduling),用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备执行。 在批处理系统中,作业进入系统后,是先驻留在外存上的,因此需要有作业调度的过程,以便将它们分批地装入内存。 在分时系统和实时系统中,通常不需要作业调度。 高级调度(续) 高级调度(续) 在每次执行作业调度时,都须做出以下两个决定。 接纳多少个作业 作业调度每次要接纳多少个作业进入内存,取决于多道程序度。即允许多少个作业同时在内存中运行。 数目太多时,可能会影响到系统的服务质量,比如,使周转时间太长。 数量太少时,又会导致系统的资源利用率和系统吞吐量太低, 接纳哪些作业 应将哪些作业从外存调入内存,将取决于所采用的调度算法。 低级调度 低级调度 用来决定就绪队列中的哪个进程应获得处理机,然后再由分派程序执行把处理机分配给该进程的具体操作。 进程调度方式是指当某一进程正在处理机上执行时,若有某个更为重要或紧迫的进程需要进行处理,即有优先权更高的进程进入就绪队列,此时应如何分配处理机。 进程调度是最基本的一种调度,在三种类型的OS中,都必须配置这级调度。 低级调度(续) 低级调度(续) - 两种调度方式 非抢占方式 指当某一进程正在处理机上执行时,即使有某个更为重要或紧迫的进程进入就绪队列,仍然让正在执行的进程继续执行,直到该进程完成或发生某种事件而进入完成或阻塞状态时,才把处理机分配给更为重要或紧迫的进程。非剥夺方式又称非抢占方式、不可剥夺方式。 低级调度(续2) 引起进程调度的因素可归结为这样几个: ① 正在执行的进程执行完毕,或因发生某事件而不能再继续执行; ② 执行中的进程因提出I/O请求而暂停执行; ③ 在进程通信或同步过程中执行了某种原语操作,如wait操作(P操作)、Block原语、Wakeup原语等。 特点:实现简单、系统开销小,适用于大多数的批处理系统环境。 但它难以满足紧急任务的要求。 低级调度(续3) 低级调度 - 两种调度方式 抢占方式 指当一个进程正在处理机上执行时,若有某个更为重要或紧迫的进程需要使用处理机,则立即暂停正在执行的进程,将处理机分配给这个更重要或紧迫的进程。剥夺方式又称抢占方式、可剥夺方式。 低级调度(续4) 抢占的原则: 优先权原则 当高优先权作业到达时,如果其优先权比正在执行进程的优先权高,便停止正在执行(当前)的进程,将处理机分配给优先权高的进程,使之执行。 短作业(进程)优先原则 当新到达的作业(进程)比正在执行的作业(进程)明显短时,将暂停当前长作业(进程)的执行,将处理机分配给新到的短作业(进程),使之优先执行。 时间片原则 各进程按时间片运行,当一个时间片用完后,便停止该进程的执行而重新进行调度。这种原则适用于分时系统、大多数的实时系统,以及要求较高的批处理系统。 中级调度 中级调度 引入中级调度的主要目的,是为了提高内存利用率和系统吞吐量。 应使那些暂时不能运行的进程不再占用宝贵的内存资源,而将它们调至外存上去等待,把此时的进程状态称为就绪驻外存状态或挂起状态。 当这些进程重又具备运行条件、且内存又稍有空闲时,由中级调度来决定把外存上的哪些进程,重新调入内存,并修改其状态为就绪状态,挂在就绪队列上等待进程调度。 中级调度实际上是存储器管理中的对换功能。 三种调度总结 三种调度总结 进程调度的运行频率最高,分时系统中通常是10-100ms 进行一次进程调度,因而进程调度算法不能太复杂,以免占用太多的CPU时间。 作业调度往往是发生在一个(批)作业运行完毕,退出系统,而需要重新调入一个(批)作业进入内存时,故作业调度的周期较长,大约几分钟一次。因而也允许作业调度算法花费较多的时间。 中级调度的运行频率,基本上

文档评论(0)

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

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

1亿VIP精品文档

相关文档