第章 处理机调度.ppt
文本预览下载声明
第5章 处理机调度 一个作业从提交到完成通常要经历多级调度。 5.1 处理机调度的类型 处理机调度需要解决: 多任务以何种方式共享处理机。互斥 处理机时间的分配及长短确定。合理 处理机分配策略。如何分配 进程切换频度与系统效率的权衡。频繁开销大,反之则并发性低 处理机的三级调度 处理机的三级调度: 作业调度 进程调度 中程调度 1.作业的状态 作业从提交到完成要经历四种状态: 提交状态:用户作业由输入设备向系统外存输入时作业所处的状态。 后备状态:作业输入到外存后,系统为其建立了作业控制块,并把它插入到后备作业队列中等待调度运行。 执行状态:作业在内存中执行。 完成状态:作业正常或异常结束,但作业占有的资源还未被系统全部回收。 作业状态转换图 作业调度 作业调度又称高级调度、宏观调度或长程调度,其主要任务是按一定的原则从外存上处于后备状态的作业中选择一个或多个作业,给它们分配内存、输入/输出设备等必要的资源,并建立相应的进程,以使该作业具有获得竞争处理机的权利。 作业调度的运行频率较低,通常为几分钟一次。 作业调度的功能 接纳多少作业:决定接纳作业的数目。 记录作业状况:记录作业各阶段的情况。包括资源分配、优先权、状态等。相关信息构成JCB,它是作业存在的唯一标志。 确定调度算法:决定接纳哪些作业。 做好执行前的准备工作:为选中作业建立进程并分配资源。 善后处理:作业完成后回收占用资源,撤消JCB。 2.中程调度 中程调度又称中级调度或交换调度,其功能是将内存中暂时不用的信息移到外存,以腾出空间给内存中的进程使用,或将需要的信息从外存读入内存。 引入中程调度的目的是提高内存利用率和系统吞吐量。 中程调度的运行频率介于两者之间。 引起中程调度的原因 频繁缺页时,应换出内存的部分作业。 就绪队列中进程太多影响响应时间,应换出就绪队列中的部分进程。 等待I/O可能要一段时间,可以将这类进程换出。 为便于紧缩,可以将部分进程换出。 内存有足够空间时,可以从外存换入一些进程。 外存中进程的优先级高于内存时,可以换入。 中程调度程序 中程调度程序由换入和换出两个过程组成: 换出过程把内存中的程序或数据换到交换区。 换入过程把外存中的程序或数据换到内存。 为了加快交换速度,外存交换区采用连续分配方式。 3.进程调度 进程调度又称低级调度、微观调度或短程调度,其主要任务是按照某种策略和方法从就绪队列中选取一个进程,将处理机分配给它。 进程调度的运行频率很高,一般几十毫秒要运行一次。 进程调度的功能 记录系统中所有进程的状态、优先数和资源情况。 按调度算法选择进程运行。 实施处理机的分配及回收。 引起进程调度的原因 正在运行进程结束 运行进程因某种原因阻塞,如P操作、I/O等 有进程进入就绪队列且就绪队列为空,或进程优先级高于当前运行进程且为剥夺调度方式 从系统调用或中断返回 时间片用完 4. 选择调度算法的准则 由于操作系统的类型及目标不同,因此选择的调度算法也不同。 选择调度算法有以下准则: 面向系统的准则 面向用户的准则 面向系统的准则 公平性:系统中的每个进程应获得合理的CPU时间。 CPU利用率高:对微机和实时系统不太重要。 系统吞吐量大:吞吐量指单位时间内所完成的进程数。 合理利用各类资源:让各类资源都忙碌,对微机不太重要。 面向用户的准则 周转时间短:指从作业提交到作业完成的时间间隔。 响应时间快:指从用户提交请求到系统产生响应的时间间隔。 截止时间的保证:截止时间是指某任务必须开始执行或必须完成的最迟时间。 稳定性:对某用户的作业而言,调度策略不应使其响应时间和周转时间变化太大。 周转时间 作业的周转时间是指从作业提交到作业完成之间的时间间隔。 平均周转时间是指多个作业的周转时间的平均值。n个作业的平均周转时间: T =(T1+T2+ … +Tn)/n(Ti为作业i的周转时间) 带权周转时间 带权周转时间是指作业周转时间与作业实际运行时间的比。 平均带权周转时间是指多个作业的带权周转时间的平均值。n个作业的平均带权周转时间: W =(W1+W2+ … +Wn)/n(Wi为作业i的带权周转时间) 5.2 调度算法 调度算法是指根据系统资源分配策略所规定的资源分配算法。 本章的算法有些适合作业调度,有些适合进程调度,有些适用于两者。 1.先来先服务调度算法 先来先服务算法既可用于作业调度,也可用于进程调度。 在作业调度中:从后备作业队列中选择一个或多个最先进入该队列的作业,将它们调入内存,为它们分配资源,创建进程,然后放入就绪队列。 进程调度中:从就绪队列中选择一个最先进入该队列的进程,为之分配处理机,使之投入运行。该进程一直运行到完成或因等待某一事件而阻塞时才释放处理机。 先来先服务调度算法例 设有4道作业,它们的
显示全部