欢迎来到天天文库
浏览记录
ID:61779866
大小:1.23 MB
页数:76页
时间:2021-03-20
《计算机操作系统操作系统第3章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章 处理机调度与死锁3.1处理机调度的层次3.2调度队列模型和调度准则3.3调度算法3.4实时调度3.5产生死锁的原因和必要条件3.6预防死锁的方法3.7死锁的检测与解除3.1处理机调度的层次3.1.1高级调度1.作业和作业步(1)作业(Job)。不仅包含通常的程序和数据,而且还配有一份作业说明书,系统根据说明书来对程序的运行进行控制。批处理系统以作业为单位从外存调入内存。(2)作业步(JobStep)。每个作业的相对独立、又相互关联的加工步骤。例:一个典型的作业:①“编译”作业步;②“连结装配”作业步;③“运行
2、”作业步。2.作业控制块JCB(JobControlBlock)作业控制块,保存系统对作业进行管理和调度所需的全部信息:作业标识、用户名称、用户帐户、作业类型(CPU繁忙型、I/O繁忙型、批量型、终端型)、作业状态、调度信息(优先级、作业已运行时间)、资源需求(预计运行时间、要求内存大小、要求I/O设备的类型和数量等)、进入系统时间、开始处理时间、作业完成时间、作业退出时间、资源使用情况等。3.作业调度根据作业控制块中的信息,审查系统能否满足用户作业的资源需求,以及按照一定的算法,从外存的后备队列中选取某些作业调入内
3、存,并为它们创建进程、分配必要的资源。然后再将新创建的进程插入就绪队列,准备执行。3.1.2低级调度调度的对象是进程(或内核级线程)。1.低级调度的功能(1)保存处理机的现场信息。(2)按某种算法选取进程。(3)把处理器分配给进程。2.进程调度中的三个基本机制(1)排队器:就绪进程排成一个或多个队列。(2)分派器:从就绪队列中取出所选定进程,进行上下文切换,将处理机分配给所选进程。(3)上下文切换机制(两次):A.保存当前进程上下文,装入分派器程序上下文,使分派器程序运行;B.移出分派程序,把新选进程的CPU现场信息
4、装入到处理机的各个相应寄存器中。3.进程调度方式1)非抢占方式(NonpreemptiveMode)把处理机分配给某进程后,直至该进程完成,自愿释放处理机,或发生某事件而被阻塞时,才再把处理机分配给其他进程。优点:实现简单,系统开销小。缺点:难以满足紧急任务的要求,可能造成难以预料的后果。2)抢占方式(PreemptiveMode)优点:可防止一个长进程长时间占用处理机,能为大多数进程提供更公平的服务,特别是能满足对响应时间有着较严格要求的实时任务的需求。缺点:开销较大。实现原则:(1)优先权原则。(2)短作业(进程
5、)优先原则。(3)时间片原则。3.1.3中级调度暂时不能运行的进程不再占用宝贵的内存资源,调至外存上去等待,此时进程状态称为就绪驻外存状态或挂起状态。即是存储器管理中的对换功能(第四章)。进程调度的运行频率最高,是短程调度。作业调度周期较长(几分钟一次),是长程调度。中级调度运行频率介于上述两种之间,称为中程调度。仅具有进程调度的调度队列模型3.2调度队列模型和调度准则2.具有高级和低级调度的调度队列模型(1)常用的就绪队列形式是优先权队列。(2)设置多个阻塞队列。每个队列对应于某一种进程阻塞事件。具有高、低两级调度
6、的调度队列模型3.同时具有三级调度的调度队列模型OS中引入中级调度,把进程就绪状态分为内存就绪(表示进程在内存中就绪)和外存就绪(进程在外存中就绪)。把阻塞状态进一步分成内存阻塞和外存阻塞两种状态。具有三级调度时的调度队列模型3.2.2选择调度方式和调度算法的若干准则1.面向用户的准则(1)周转时间短。周转时间,是指从作业被提交给系统开始,到作业完成为止的这段时间间隔(称为作业周转时间)。它包括四部分时间:作业在外存后备队列上等待(作业)调度的时间,进程在就绪队列上等待进程调度的时间,进程在CPU上执行的时间,以及进
7、程等待I/O操作完成的时间。系统平均周转时间:带权周转时间:W=T/TsT:作业周转时间Ts:系统为作业提供服务的时间平均带权周转时间:(2)响应时间快。响应时间,是从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间。它包括三部分时间:从键盘输入的请求信息传送到处理机的时间,处理机对请求信息进行处理的时间,以及将所形成的响应信息回送到终端显示器的时间。(3)截止时间的保证。截止时间,是指某任务必须开始执行的最迟时间,或必须完成的最迟时间。(实时系统)。(4)优先权准则。2.面向系统的准则(1)系统吞吐量高
8、。吞吐量是指在单位时间内系统所完成的作业数。(2)处理机利用率好。(大、中型多用户系统)。对于单用户微机或某些实时系统,此准则不重要。(3)各类资源的平衡利用。3.2.1先来先服务和短作业(进程)优先调度算法1.先来先服务调度算法算法既可用于作业调度,也可用于进程调度。FCFS算法比较有利于长作业(进程),而不利于短作业(进程)。3.3调度算法
此文档下载收益归作者所有