文档详情

微格教学计算机操作系统处理机调度与死锁先来先服务调度算法和短作业(进程)优先调度算法.ppt

发布:2018-04-18约1.82千字共12页下载文档
文本预览下载声明
3.3 调度算法 计算机操作系统 第3章 处理机调度与死锁 3.3.1先来先服务调度算法和短作 业(进程)优先调度算法 本节概述 1.主要内容: 先来先服务调度算法; 短作业(进程)优先调度算法。 2.学习目标:理解上述调度算法及它 们各自的优缺点。 调度算法 在OS中调度的实质是一种资源分配,因而调度算法是指:根据系统的资源分配策略所规定的资源分配算法。目前有很多处种调度算法,有些适用于作业调度,有些适用于进程调度,有些两者都能适用。 这里我们主要介绍两种调度算法: (1)先来先服务调度算法(FCFS); (2)短作业(进程)优先调度算法SJ(P)F。 周转时间: 是指作业被提交给系统开始,到 作业完成为止的这段时间间隔。 带权周转时间:作业的周转时间Ti与系统为它 提供服务的时间TS之比。 1.先来先服务调度算法(FCFS) 衡量进程调度性能的一个指标:周转时间。 1.先来先服务调度算法(FCFS) 先来先服务调度算法是一种最简单的调度法,该算法即可用于作业调度,也可用于进程调度。 作业调度: 每次都是从后备队列中选择一个或多个最先进入该队列的作业,将他们装入内存,分配资源,创建进程,放入就绪队列。 进程调度: 每次是从就绪队列中选择一个最先进入队列的进程分配处理机,使之投入运行,该进程一 直执行到完成或发生某事件而阻塞才放弃处理机. 进程名 到达时间 服务时间 开始执行时间 完成时间 周转时间 带权周转时间 A 0 1 0 1 B 1 100 1 101 C 2 1 101 102 D 3 100 102 202 1.先来先服务调度算法(FCFS) 下表列出了A ,B,C,D四个作业情况。 1 1 100 1 100 100 199 1.99 1.先来先服务调度算法(FCFS) 从上表可以看出,其中短作业C的带权周转时间是100,而长作业D的带权周转时间时间是1.99。由此可知,FCFS调度算法有利于CPU繁忙型的作业,而不利于I/O繁忙型的作业(进程)。 短作业(进程)优先调度算法是指对短作业或短进程优先调度的算法。它们可以分别用于作业调度和进程调度。短作业优先的调度算法,是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存运行。而短进程优先调度算法,则是从就绪队列中选出一估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时,再重新调度。 2 .短作业(进程)优先调度算法 作业 情况 调度 算法 进程名 A B C D 平均 到达时间 0 1 2 3 服务时间 4 3 5 2 FCFS 完成时间 4 7 12 14 周转时间 4 6 10 11 7.75 带权周转时间 1 2 2 5.5 2.625 SJF 完成时间 4 9 14 6 周转时间 4 8 12 3 6.75 带权周转时间 1 2.64 2.4 1.5 1.885 2 .短作业(进程)优先调度算法 图 FCFS和SJF调度性能的对比 2 .短作业(进程)优先调度算法 从上表可以看出,采用SJ(P)F算法后,不论是平均周转时间还是平均带权周转时间,都有较明显的改善,尤其对短作业D,其周转时间由原来的11降为3;而平均带权周转时间是从5.5降为1.5。这说明SJF调度算法能有效的降低作业的平均等待时间,提高系统吞吐量。 算法 FCFS算法 SJ(P)F算法 优点 (1)比较容易实现, (2)有利于长作业(长进程)。 有效的降低作业的平均等待时间,提高系统吞吐量。 缺点 不利于短作业(短进程) 。 (1) 对长作业不利; (2) 不能保证紧迫性作业(进程)的及时处理; (3) 不一定能真正做到短作业优先。 3.先来先服务和短作业(进程)优先调度 算法优缺点对比。 3.3 调度算法
显示全部
相似文档