欢迎来到天天文库
浏览记录
ID:56476735
大小:2.22 MB
页数:163页
时间:2020-06-19
《操作系统进程调度.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章处理机调度与死锁3.1处理机调度的基本概念3.2调度算法3.3实时调度3.4多处理机系统中的调度3.5产生死锁的原因和必要条件3.6预防死锁的方法3.7死锁的检测与解除教学目的:掌握优先级、吞吐量、死锁等基本概念熟练掌握处理机的各种调度算法掌握死锁产生原因和必要条件熟练掌握用银行家算法来避免死锁的方法掌握死锁的检测和解除方法重点与难点:处理机的各种调度算法银行家算法死锁的解除方法3.1处理机调度的基本概念3.1.1高级、中级和低级调度3.1.2调度队列模型3.1.3选择调度方式和调度算法的若干原则高级调度:又称为作业调度或长程调度。用于决定把后备队列中的哪些作业
2、调入内存,为它们创建进程、分配必要的资源,再将新创建的进程排在就绪队列上,准备执行。在批处理系统中,大多配有作业调度,但在分时和实时系统中,却往往不配置作业调度。作业调度的运行频率较低,通常为几分钟一次。3.1.1高级、中级和低级调度——调度的类型执行作业调度时,需要解决:(1)一次接纳多少作业:即允许多少个作业同时在内存中运行。(2)接纳哪些作业:即哪些作业调入内存,取决于所采用的算法。比如先来先服务调度算法;或者是短作业优先调度算法;还有基于作业优先权的调度算法,响应比高者优先调度算法等。2.低级调度:又称为进程调度、短程调度。用于决定就绪队列中的哪个进程能获得处
3、理器,并将处理机分配给该进程。进程调度程序是操作系统最为核心的部分,进程调度策略的优劣直接影响到整个系统的性能。三种类型的操作系统中,都必须配置此级调度。低级调度方式分两类:(1)非抢占方式一旦把处理机分配给某个进程后,让该进程一直执行,直到该进程完成或者发生某事件而阻塞。引起进程调度的因素:正在执行的进程执行完毕;执行中的进程因为提出I/O请求而暂停执行;进程通信或同步过程中执行了原语操作。(2)抢占方式当一进程正在处理机上执行时,系统可根据某种原则暂停它的执行,并将已分配给它的处理机重新分配给另一个进程。抢占的原则有:优先权原则:就绪的高优先权进程有权抢占低优先权
4、进程的CPU。短作业优先原则:就绪的短作业(进程)有权抢占长作业(进程)的CPU。时间片原则:一个时间片用完后,系统重新进行进程调度。3.中级调度又称平衡负载调度、中程调度。目的是为了提高内存利用率和系统吞吐量。实质是进程的内外存对换功能:将外存中已具备运行条件的进程换入内存,而将内存中处于阻塞状态的某些进程换出至外存。在三种调度中,进程调度的运行频率最高,作业调度的周期较长,中级调度的运行频率在上述两者之间。三级调度之间的关系3.1.2调度队列模型根据os中所引入的调度的类型,形成了三种类型的调度队列模型:仅有进程调度的调度队列模型;具有高级和低级调度的调度队列模型
5、;同时具有三级调度的调度队列模型。1.仅具有进程调度的调度队列模型2.具有高级和低级调度的调度队列模型就绪队列进程调度CPU进程完成等待事件1作业调度事件1出现时间片完等待事件2事件2出现……等待事件n事件n出现后备队列……3.同时具有三级调度的调度队列模型就绪队列进程调度CPU就绪,挂起队列中级调度阻塞,挂起队列阻塞队列等待事件进程完成时间片完作业调度交互型作业后备队列批量作业挂起事件出现事件出现3.1.3选择调度方式和调度算法的若干原则面向用户的准则(1)周转时间短作业周转时间:作业提交计算机到作业完成为止的时间间隔。它是作业在系统里的等待时间与运行时间之和。平均
6、作业周转时间:带权周转时间:W=T/Ts注意:带权周转时间总大于1。平均作业带权周转时间:主要用于评价批处理系统。T:作业的周转时间,Ts:作业的运行时间。(2)响应时间快从用户通过键盘提交一个请求到系统首次产生响应之间的时间间隔称响应时间。主要用于评价分时系统。(3)截止时间的保证任务必须开始执行的最迟时间或必须完成的最迟时间称截止时间。主要用于评价实时系统。(4)优先权准则在三种OS中,都可遵循。2.面向系统的准则系统吞吐量高吞吐量:单位时间内系统所完成的作业数。(2)处理机利用率好CPU总的运行时间=CPU有效工作时间+CPU空闲等待时间CPU利用率=CPU有效
7、工作时间/CPU总的运行时间(3)各类资源的平衡利用3.2调度算法3.2.1先来先服务和短作业优先调度算法3.2.2高优先权优先调度算法3.2.3基于时间片轮转调度算法调度算法的概念:根据系统的资源分配策略所规定的资源分配算法称为调度算法。通常将作业或进程归入各种就绪或阻塞队列。有的算法适用于作业调度,有的算法适用于进程调度,有的两者都适应。3.2.1先来先服务和短作业优先调度算法最简单的调度算法。用于作业调度时:按照作业进入系统的先后次序来挑选作业,先进入系统的作业优先被挑选。用于进程调度时:按照进程就绪的先后次序来调度进程。算法特点:容易实现,效
此文档下载收益归作者所有