计算机操作系统基础笔记 操作系统有哪些状态( 四 )


4. 优先权原则
三级调度高级调度又称为作业调度或长程调度,作业(JOB)是用户在一次算题过程中或一次事务处理中,要求计算机系统所做的工作的集合。
批处理系统需要有作业调度,分时和实时系统无需此调度
多道程序度:即允许多少个作业同时在内存中运行 。
周转时间:从作业被提交给系统开始,到作业完成为 止的这段时间间隔 。
吞吐量:是指在单位时间内系统所完成的作业数
中级调度它按一定的算法将外存中已具备运行条件的进程换入内存,而将内存中某些处于阻塞状态的某些进程换出至外存(阻塞->挂起) 。
中级调度的目的是为了解决内存紧张问题 。
低级调度又称为进程调度或短程调度 。是最基本的调度,在三种类型的操作系统中都必须配置它 。(批处理、分时和实时)
分为:
1. 非抢占方式
2. 抢占方式,原则:1)优先权原则 2)短作业优先原则 3)时间片原则
三个基本原则:
(1)排队器
(2)分派器(调度程序)
(3)上下文切换机制
低级调度的功能:
(1)按某种算法选取进程(调度) 。
(2)保存处理机的现场信息(上下文切换第一步骤)
(3) 把处理器分配给进程(上下文切换第二步骤)
调度算法先来先服务-FCFS按照作业/进程进入系统的先后次序,遵循先进入系统者先调度 。
优点:
1. 有利于长作业/进程
2. 有利于CPU繁忙型作业/进程
缺点:
1. 不利于短作业/进程,尤其是来的较晚的短作业/进程
2. 不利于I/O繁忙型作业/进程
用于批处理系统,不适于分时系统
短作业/进程优先算法-SJF/SPF按照运行时间长短进行调度,运行时间越短越优先调度 。不可抢占 。
优点:
1. 能有效降低作业/进程的平均等待时间
2. 提高系统的吞吐量
缺点:
1. 不利于长作业/进程
2. 未考虑作业/进程紧迫程度,不能保证紧迫作业/进程被及时处理
3. 运行时间无法准确估计,不能真正保证短作业/进程优先
4. 无法实现人机交互
高优先权优先算法-HPF分类:
1. 静态优先权,简单易行,开销小,但是不够精确,还可能导致低优先权作业/进程长期得不到调度
2. 动态优先权,更好的调度性能,可防止长作业/进程长期垄断处理机
高响应比优先调度算法-HRRN响应比/优先权=等待时间+要求服务时间要求服务时间=响应时间要求服务时间响应比/优先权=等待时间+要求服务时间要求服务时间=响应时间要求服务时间
此处的要求服务时间,准确来说是指剩余的需要服务的时间 。
HRRN是介于FCFS和SJF/SPF之间的一种这种算法,相比于SJF/SPF有着更低的吞吐量和更高的系统开销 。
对短作业有利,一定程度上是先来先服务,也对长作业有利,但由于计算响应比,会增加系统开销 。
时间片轮转算法-RR系统将所有就绪进程按先来先服务原则排成队列 。
就绪进程直接置于队尾,若此时正处于某一进程的时间片,该进程是位于队首的
多级反馈队列调度算法-FB原理:
1. 设置多个就绪队列,并为各个队列赋予不同的优先级
2. 一个新进程进入内存后,首先将它放入第一队列的末尾,按FCFS原则排队等待调度
3. 仅当第一队列空闲时,调度程序才调度第二队列中的进程运行
调度过程:
1. 按优先级由高到低设置多个队列RQ0 ,RQ1 … RQn ,高优先级队列时间片小
2. 刚进入系统的进程按FCFS放入最高的RQ0中
3. 进程一次时间片没执行完,就降至下一级队列,以此类 推,降至最低优先级队列后,一直在此队列中不再下降
4. 系统优先调度高优先级队列中的进程,仅当RQ0 空闲时才调度RQ1 队列进程,以此类推
5. 如果是抢占式,当前时间片未用完时有进程进入高优先级队列时,将当前进程置于其所在队列的末尾,而后开始执行高优先级队列的时间片
实时调度常用的调度方式:
1. 非抢占式轮转调度方式
2. 非抢占式优先权调度方式
3. 抢占式调度优先权调度方式
4. 立即抢占的优先权调度方式

推荐阅读