操作系统作业调度
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JOB1 JOB2 JOB3 JOB4
10:00 11:20 10:10 10:30
3.2.2 高优先权优先调度算法 (HPF—Highest Priority First 把处理机分给优先权最高的就绪进程。 1. 优先权调度算法的类型 1) 非抢占式优先权算法 2) 抢占式优先权调度算法
2. 优先权的类型
(5)作业调度
1) 接纳多少个作业
2) 接纳哪些作业
FCFS 、SJF、HPF、HRN
进程调度
一、进程调度的功能: 在PCB中保存处理机的现场信息 根据算法选取进程 分派程序将处理机分配给进程 附:调度方式 非抢占方式: 运行进程完成或阻塞时,才再分配处理机。 抢占方式: 将正运行进程强行撤下,处理机分配给其它进 程。
图 3-3 具有三级调度时的调度队列模型
3.1.3 选择调度方式和调度算法的若干准则
1. 面向用户的准则
(1) 周转时间短。
平均周转时间:
1 i T Ti n i 1
作业的周转时间 T 与系统为它提供服务的时间 TS 之比,即 W=T/TS,称为带权周转时间,而平均带权周转时间则可表
二、进程调度的时机: 当前进程结束
当前进程调用阻塞原语将自己阻塞
当前进程调用P( )申请资源不能满足或调用V( )唤 醒了等待进程 当前进程提出了I/O请求 时间片到 在抢占调度中,有一个优先权更高的进程进入就 绪队列
三、进程调度算法: 就绪队列的两种组织: 进程进入就绪队列时,插入到合适的优先位 置。调度时取队首进程。 进程进入就绪队列末尾,调度时扫描整个队 列,选择最合适的进程。
!进程调度频率最高,约10~100 ms进行一次,因
而进程调度算法不能太复杂,以免占用太多CPU时
间
(1)作业
作业调度
程序+数据+作业说明书 (2)作业步
(4)作业控制块(JCB:Job Control Block) • 作业控制块是作业存在的标志 • 保存有系统进行作业管理所需要的全部信息 • 位于磁盘区域中
3. 高响应比优先调度算法
(HRRN:Highest Response Ratio Next)
等待时间 要求服务时间 优先权 要求服务时间
由于等待时间与服务时间之和,就是系统对该
作业的响应时间,故该优先权又相当于响应比 RP 。
等待时间 要求服务时间 响应时间 优先权 要求服务时间 要求服务时间
JOB1 JOB2 JOB3 JOB4
10:00 10:50 11:00 11:20
最短作业优先作业算法计算结果
作业 进入时间 估计运行 开始时间 时间 (分钟) 120 8:00 8:00 50 8:50 10:30 10 9:00 10:00 20 9:50 10:10 作业平均周转时间 T = 95 作业带权平均周转时间 W = 3.25 结束时间 周转时间 (分钟) 120 150 70 40 380 带权周转 时间 1 3 7 2 13
示为:
1 n Ti W n i 1 TSi
(2) 响应时间快。
(3) 截止时间的保证。
(4) 优先权准则。 2. 面向系统的准则
(1) 系统吞吐量高。 (2) 处理机利用率好。 (3) 各类资源的平衡利用。
3.2 调度算法
3.2.1 先来先服务和短作业(进程)优先调度算法
3.1 处理机调度概述
处理机调度(CPU调度)要解决的问题: WHAT:按什么原则分配CPU —调度算法 WHEN:何时分配CPU —调度的时机 HOW: 如何分配CPU —CPU调度过程(进程的上下文切换)
3.1.1处理机调度的三个层次
作业调度(高级调度) 交换调度(中级调度) 进程调度(低级调度)
源自文库
等待时间 要求服务时间 响应时间 优先权 要求服务时间 要求服务时间
(1) 如果作业的等待时间相同,则要求服务的时间愈 短,其优先权愈高,因而该算法有利于短作业。
1. 先来先服务调度算法 FCFS:First Come First Serve
2. 短作业(进程)优先调度算法 SJF:Shortest Job First
例
假设在单道批处理环境下有四个作业 ,已知它们进入系统的时间、估计运行时 间。 应用先来先服务、最短作业优先和最 高响应比优先作业调度算法,分别计算出
就 绪 队 列
CPU
事件1出现
等待事件 1
事件2出现
等待事件 2
…
事件n 出现
…
图 3-2 具有高、低两级调度的调度队列模型
…
…
等待事件 n
3. 同时具有三级调度的调度队列模型
作业调度 后备队列 批量作业 交互型作业 中级调度 时间片完 就绪队列
进程调度
CPU
进程完成
就绪,挂起队列 事件出现
阻塞,挂起队列 事 件 出 现 阻塞队列 等待事件 挂起
作业的平均周转时间和带权的平均周转时
间
先来先服务调度算法计算结果
作业 进入时间 估计运行 开始时间 时间 (分钟) 120 8:00 8:00 50 8:50 10:00 10 9:00 10:50 20 9:50 11:00 作业平均周转时间 T = 112.5 作业带权平均周转时间 W = 4.975 结束时间 周转时间 (分钟) 120 120 120 90 450 带权周转 时间 1 2.4 12 4.5 19.9
静态优先权: 创建进程时根据进程类型、资源需求、用户要求等因 素确定优先级,并保持不变。 动态优先权: 创建进程时赋予进程一个优先权初值,但随着进程的
等待时间及执行时间的延长,其优先级会增加或降低。
例:线性优先级调度策略:
新建进程队列 享受服务进程队列
CPU
优先级P=P+a * t 优先级P=P- b * t (a>b>0)
FCFS、SPF 、HPF、RR
3.1.2 调度队列模型
1. 仅有进程调度的调度队列模型
时间片完 进程调度 进程完成
交互用户 事 件 出 现
就 绪 队 列
CPU
阻 塞 队 列
等待事件
图 3-1 仅具有进程调度的调度队列模型
2. 具有高级和低级调度的调度队列模型
作业 调度 后 备 队 列 时间片完 进程调度 进程完成