计算机操作系统 第三章 处理机调度与死锁.ppt

计算机操作系统 第三章 处理机调度与死锁.ppt

ID:51594328

大小:1.82 MB

页数:82页

时间:2020-03-25

计算机操作系统 第三章 处理机调度与死锁.ppt_第1页
计算机操作系统 第三章 处理机调度与死锁.ppt_第2页
计算机操作系统 第三章 处理机调度与死锁.ppt_第3页
计算机操作系统 第三章 处理机调度与死锁.ppt_第4页
计算机操作系统 第三章 处理机调度与死锁.ppt_第5页
资源描述:

《计算机操作系统 第三章 处理机调度与死锁.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第三章处理机调度与死锁本章内容处理机调度常用调度算法介绍死锁与预防死锁的方法本章讨论处理器资源的管理问题。处理器调度问题决定着整个系统的综合性能。不同的CPU管理方法将为用户提供不同性能的操作系统。3.1处理机调度的层次从处理器调度的对象、时间、层次等不同角度,可把处理器调度分成不同类型。按照调度涉及的层次不同,从用户作业从进入系统成为后备作业开始,直到运行结束退出系统为止,可把处理器调度分成:高级调度中级调度低级调度3.1.1高级调度高级调度概念也称为作业调度、长程调度或接纳调度。按照系统预定的调度策略,决定把外存上处于后备队列中的哪些

2、作业调入内存,并为它们创建进程、分配必要的资源,然后再将创建的进程排在就绪队列上,准备执行。在批处理操作系统中,作业首先进入系统在辅存上的后备作业队列等候调度,因此,作业调度是必须的。在纯粹的分时或实时操作系统中,通常不需要配备作业调度。作业相关概念作业:程序+数据+作业说明书作业步:相对独立相互关联的顺序加工步骤作业流作业控制块JCB:作业在系统中的标识,保存有系统对作业进行管理与调试所需要的全部信息作业标识用户名称、用户帐户作业类型、作业状态资源需求调度信息进入时间、开始处理时间、需求时间……作业调度时要做的决定:(1)接纳多少个作业

3、(2)接纳哪些作业(调度算法)作业调度的目标:(1)对所有作业尽量做到公平合理(2)高设备利用率(3)执行尽可能多的作业(4)尽量短的响应时间3.1.2低级调度也称为进程调度、短程调度。用于决定就绪队列中的哪个进程获得处理机。低级调度程序是操作系统最为核心的部分,低级调度策略的优劣直接影响到整个系统的性能。最初的调度对象是传统操作系统中的进程,随着现代操作系统引入了多线程技术,进程演变成资源管理的单位,从而只作为中级调度的对象,内核级线程则替代进程成为低级调度的对象。1.进程调度功能(1)记录系统中所有进程的执行情况(2)选择占有处理机的

4、进程(选择算法)(3)进行进程上下文切换—个进程的上下文(context)包括进程的状态、有关变量和数据结构的值、机器寄存器的值等相关程序、数据。当正在执行的进程让出处理机时,系统要做进程上下文切换,以使另一个进程得以执行。2.进程调试中的三个基本机制排队器:负责组织各进程队列分派器:将选中的进程从就绪队列中取出,分配处理机上下文切换机制两对上下文切换:保存当前进程上下文,装入分派程序上下文移出分派程序上下文,装入新选进程现场信息3.进程调度方式1)非抢占方式进程一旦获得处理机后便一起执行下去,直至该进程完成或发生某事件被阻塞时,才把处理

5、机分配给其他进程。决不允许某进程抢占已经分配出去的处理机。当前进程无论在用户态还是核心态都不可以被抢用CPU。不可抢先式OS:Windows98/95,在这些OS中,进程从运行态退出只能是自愿或阻塞,不能强迫运行态就绪态。引起进程调度的因素:(1)进程执行完毕,或发生某事件不能再继续执行(2)I/O请求(3)进程通信或同步过程中执行了原语操作优点:实现实现简单,系统开销小,适用于批处理系统。缺点:不能满足紧急任务的要求,不适用于实时系统。2)抢占方式当一个进程正在运行时,调度程序可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进

6、程。剥夺原则有:(1)优先权原则(2)短进程优先原则(3)时间片原则。内核完全不可抢先当前进程在用户态时可随时被抢用CPU,但处于核心态时完全不可以被抢用CPU。如:传统的UNIX和Windows。这类操作系统通常在系统调用或中断时屏蔽中断,系统调用返回或中断返回时开放中断。内核的部分可抢先当前进程在用户态时随时被抢用CPU,但处于核心态时则大部分时间不可以被抢用CPU,只在某些时刻点(可抢先点)可以被抢用CPU。如:UNIXSVR4。SVR4内核定义了抢先点:内核代码中的这样一些位置,内核的数据结构处在一个稳定的状态,并且内核马上要开始

7、长时间的、大量的计算。此时,内核检查是否有实时进程就绪需要运行,若有则抢先当前进程。完全可抢先或内核完全可抢先无论当前进程处于用户态还是核心态,都可以随时可被抢用CPU。如:SUNSolaris(最成功的UNIX商业变种之一)。为做到完全可抢先,Solaris对SVR4的核心代码做了全面修改,大部分的内核全局数据结构都用正确的同步对象如互斥锁或信号量来保护,并通过特殊内核线程实现中断来避免用提高优先级的方法保护临界区。Solaris内核中只有极少的不可抢先代码段。3.1.3中级调度中级调度实现进程在主存与外存间的对换。反映到进程状态上就是

8、挂起和解除挂起。中级调度将那些暂时不能运行的进程调出主存,此时这些进程处于挂起状态。当被挂起的进程具备了运行条件,且主存又有空闲区域时,再由中级调度决定一部分这样的进程重新调回主存工作。中级调

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。