操作系统之处理机调度
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
wk.baidu.com
可编辑ppt
5
可编辑ppt
6
• 作业调度目标与性能衡量
调度目标: 对所有作业应该是公平合理的 应使设备有高的利用率 每天执行尽可能多的作业 有快的响应时间。
衡量调度策略的指标:
周转时间:将一个作业提交给计算机系统后到该 作业的结果返回 Ti = Tei – Tsi T = (∑Ti)/n ---平均周转时间 Wi = Ti/Tri --- 带权周转时间 W = (∑Wi)/n ---平均带权周转时间
第四章 处理机调度
•分级调度 •作业调度 •进程调度 •调度算法 •实时系统调度方法
可编辑ppt
1
1、分级调度
• 作业的状态及其转换
可编辑ppt
2
• 调度的层次
通常处理机调度可以分为4级 1)作业调度(高级调度)
按一定原则对外存输入井上的大量后备作业进 行选择,给选出的作业分配内存、输入输出设备 等必要资源,并建立进程。作业完毕后,回收资 源。 2)交换调度(中级调度)
可编辑ppt
10
• 进程上下文切换
一般步骤:
1)决定是否做上下文切换以及是否允许 做
2)保存当前执行进程的上下文
3)选择就绪进程
4)恢复或装配所选进程的上下文
• 进程调度性能评价
定形:可靠性、简洁性
定量:CPU利用率、进程在就绪队列中 的等待时间与执行时间之比、响应时间
可编辑ppt
11
4、调度算法
5)当1级队列空后调度程序才去调度2级队列中的进程,3 级、4级。。。依次类推。
6)当比运行进程更高级别队列中到来一个新的进程时, 它将抢占处理机,被抢占进程回到原队列尾
可编辑ppt
16
算法实现目标:
为提高系统吞吐量和降低作业平均等待时间而 照顾短作业;
为得到较好的输入输出设备利用率和对交互用 户的及时响应而照顾输入输出型作业;
为什么会照顾短作业? 为什么会照顾输入输出型作业?
对于长作业,由于逐级进入第优先级队列,所获 时间片越来越大,相对普通轮转法对长作业的响 应较优
可编辑ppt
17
• 优先级法
按优先级的高低进行调度
优先级的确定:静态和动态
静态:进程运行前就确定,运行中不可变
动态:结合静态优先级和进程动态特征,运行时不断调整 优先级
2)各级队列有不同的时间片,优先级越高时间片越小。
3)各级队列均按先来先服务原则排序
4)调度方法:新进程进入后,被放入1级队列末尾;队列 中按先来先服务分配处理机;时间片用完还未完成,进入 下一级队列末尾;如果因输入输出或等待时间主动放弃处 理机的进程,离开就绪队列,待事件发生后返回同级队列 队尾。
9
• 进程调度的时机
正在执行的进程执行完毕 执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等 待状态 执行中进程调用了P原语操作,从而因资源不足而被阻塞; 或调用了V原语操作激活了等待资源的进程队列 执行中进程提出I/O请求后被阻塞 在分时系统中时间片用完 执行完系统调用,系统程序返回用户进程 就绪队列中某进程优先级变得高于当前执行进程得优先级
将处于外存交换区中的就绪状态或就绪等待状 态的进程调入内存,或把处于内存就绪状态或内 存等待状态的进程交换到外存交换区 3)进程调度(低级调度)
选取处于就绪状态的进程占用CPU,进程上 下文切换 4)线程调度
可编辑ppt
3
• 作业与进程的关系
作业是任务实体,进程是执行实体。 作业如何分解为进程? 1) 系统必须为一个作业创建一个根进程;
可编辑ppt
7
吞吐量:在给定时间内,一个计算机系统 完成的总工作量。
响应时间:用户向计算机发出一个指令到 计算机把相应的执行结果返回给用户所用 的时间。
设备利用率:设备使用情况
可编辑ppt
8
3、进程调度
• 进程调度的功能
记录系统中所有进程的执行情况 选择占用处理机的进程 进行进程上下文切换
可编辑ppt
• 先来先服务 • 轮转法 • 多级反馈队列轮转法 • 优先级法 • 最短作业优先法 • 最高响应比优先法
可编辑ppt
12
例:某操作系统采用三级调度策略,一级队列 时间片10ms,二级100ms,三级1000ms,
有若干进程按以下顺序进入队列:
进程
进入时刻
运行时间
1
0
100
2
10
20
3
50
150
4
程、CPU繁忙的进程、 I/O与CPU均衡的进程、一 般进程)
2)作业优先级作为进程优先级 动态优先级
一般原则: 1)根据进程占有CPU时间长短决定 2)根据就绪进程等待CPU时间长短决定
由于优先级不断变化,系统要有一定开销进行 优先级计算
静态优先级:
作业调度中确定的原则
1)用户自己根据作业紧急度输入优先级
2)系统或操作员根据作业类型指定优先级 (I/O繁忙的作业、CPU繁忙的作业、 I/O与CPU均衡的作 业、一般作业)
3)根据作业资源要求确定(例如根据估计所 需的处理机时间、内存量大小、I/O设备类型及数量
可编辑ppt
18
进程的静态优先级确定原则: 1)按进程类型给予不同优先级(I/O繁忙的进
200
1300
5
500
20
6
700
100
可编辑ppt
13
• 先来先服务
从就绪队列队首选择进程,新进程排在队尾 短作业在系统中的驻留平均时间与长作业 驻留平均时间相同,对短作业不利。
• 轮转法
将CPU的处理时间分成固定大小的时间片。 如果一个进程在被调度选中后用完了系统 规定的时间片,但未完成要求的任务,则 它自行释放自己所占有的CPU而排列在就绪 队列队尾。
可编辑ppt
14
轮转法调度只适合于可抢占式资源
时间片长的选取: 太长:? 太短:? g = R / Nmax
R ---系统对响应时间的要求 Nmax---就绪队列允许最大进程数 响应时间和服务时间成正比,在响应时间 上优于FCFS,对长作业不利
可编辑ppt
15
• 多级反馈队列调度算法
1)系统中有多个进程就绪队列,每个就绪队列对应一个 调度级别,各级具有不同运行优先级,第一级最高。
2) 在执行作业控制语句时,系统或根进程 为其创建相应的子进程,然后为各子进程 分配资源和调度各子进程执行以完成作业 要求的任务。
可编辑ppt
4
2、作业调度
• 作业调度的功能
1)记录系统中各作业的状况 JCB
2)从后备队列中挑选出一部分作业投入 执行 3)为被选中作业做好执行前准备工作 4)在作业执行结束时做善后处理工作
可编辑ppt
5
可编辑ppt
6
• 作业调度目标与性能衡量
调度目标: 对所有作业应该是公平合理的 应使设备有高的利用率 每天执行尽可能多的作业 有快的响应时间。
衡量调度策略的指标:
周转时间:将一个作业提交给计算机系统后到该 作业的结果返回 Ti = Tei – Tsi T = (∑Ti)/n ---平均周转时间 Wi = Ti/Tri --- 带权周转时间 W = (∑Wi)/n ---平均带权周转时间
第四章 处理机调度
•分级调度 •作业调度 •进程调度 •调度算法 •实时系统调度方法
可编辑ppt
1
1、分级调度
• 作业的状态及其转换
可编辑ppt
2
• 调度的层次
通常处理机调度可以分为4级 1)作业调度(高级调度)
按一定原则对外存输入井上的大量后备作业进 行选择,给选出的作业分配内存、输入输出设备 等必要资源,并建立进程。作业完毕后,回收资 源。 2)交换调度(中级调度)
可编辑ppt
10
• 进程上下文切换
一般步骤:
1)决定是否做上下文切换以及是否允许 做
2)保存当前执行进程的上下文
3)选择就绪进程
4)恢复或装配所选进程的上下文
• 进程调度性能评价
定形:可靠性、简洁性
定量:CPU利用率、进程在就绪队列中 的等待时间与执行时间之比、响应时间
可编辑ppt
11
4、调度算法
5)当1级队列空后调度程序才去调度2级队列中的进程,3 级、4级。。。依次类推。
6)当比运行进程更高级别队列中到来一个新的进程时, 它将抢占处理机,被抢占进程回到原队列尾
可编辑ppt
16
算法实现目标:
为提高系统吞吐量和降低作业平均等待时间而 照顾短作业;
为得到较好的输入输出设备利用率和对交互用 户的及时响应而照顾输入输出型作业;
为什么会照顾短作业? 为什么会照顾输入输出型作业?
对于长作业,由于逐级进入第优先级队列,所获 时间片越来越大,相对普通轮转法对长作业的响 应较优
可编辑ppt
17
• 优先级法
按优先级的高低进行调度
优先级的确定:静态和动态
静态:进程运行前就确定,运行中不可变
动态:结合静态优先级和进程动态特征,运行时不断调整 优先级
2)各级队列有不同的时间片,优先级越高时间片越小。
3)各级队列均按先来先服务原则排序
4)调度方法:新进程进入后,被放入1级队列末尾;队列 中按先来先服务分配处理机;时间片用完还未完成,进入 下一级队列末尾;如果因输入输出或等待时间主动放弃处 理机的进程,离开就绪队列,待事件发生后返回同级队列 队尾。
9
• 进程调度的时机
正在执行的进程执行完毕 执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等 待状态 执行中进程调用了P原语操作,从而因资源不足而被阻塞; 或调用了V原语操作激活了等待资源的进程队列 执行中进程提出I/O请求后被阻塞 在分时系统中时间片用完 执行完系统调用,系统程序返回用户进程 就绪队列中某进程优先级变得高于当前执行进程得优先级
将处于外存交换区中的就绪状态或就绪等待状 态的进程调入内存,或把处于内存就绪状态或内 存等待状态的进程交换到外存交换区 3)进程调度(低级调度)
选取处于就绪状态的进程占用CPU,进程上 下文切换 4)线程调度
可编辑ppt
3
• 作业与进程的关系
作业是任务实体,进程是执行实体。 作业如何分解为进程? 1) 系统必须为一个作业创建一个根进程;
可编辑ppt
7
吞吐量:在给定时间内,一个计算机系统 完成的总工作量。
响应时间:用户向计算机发出一个指令到 计算机把相应的执行结果返回给用户所用 的时间。
设备利用率:设备使用情况
可编辑ppt
8
3、进程调度
• 进程调度的功能
记录系统中所有进程的执行情况 选择占用处理机的进程 进行进程上下文切换
可编辑ppt
• 先来先服务 • 轮转法 • 多级反馈队列轮转法 • 优先级法 • 最短作业优先法 • 最高响应比优先法
可编辑ppt
12
例:某操作系统采用三级调度策略,一级队列 时间片10ms,二级100ms,三级1000ms,
有若干进程按以下顺序进入队列:
进程
进入时刻
运行时间
1
0
100
2
10
20
3
50
150
4
程、CPU繁忙的进程、 I/O与CPU均衡的进程、一 般进程)
2)作业优先级作为进程优先级 动态优先级
一般原则: 1)根据进程占有CPU时间长短决定 2)根据就绪进程等待CPU时间长短决定
由于优先级不断变化,系统要有一定开销进行 优先级计算
静态优先级:
作业调度中确定的原则
1)用户自己根据作业紧急度输入优先级
2)系统或操作员根据作业类型指定优先级 (I/O繁忙的作业、CPU繁忙的作业、 I/O与CPU均衡的作 业、一般作业)
3)根据作业资源要求确定(例如根据估计所 需的处理机时间、内存量大小、I/O设备类型及数量
可编辑ppt
18
进程的静态优先级确定原则: 1)按进程类型给予不同优先级(I/O繁忙的进
200
1300
5
500
20
6
700
100
可编辑ppt
13
• 先来先服务
从就绪队列队首选择进程,新进程排在队尾 短作业在系统中的驻留平均时间与长作业 驻留平均时间相同,对短作业不利。
• 轮转法
将CPU的处理时间分成固定大小的时间片。 如果一个进程在被调度选中后用完了系统 规定的时间片,但未完成要求的任务,则 它自行释放自己所占有的CPU而排列在就绪 队列队尾。
可编辑ppt
14
轮转法调度只适合于可抢占式资源
时间片长的选取: 太长:? 太短:? g = R / Nmax
R ---系统对响应时间的要求 Nmax---就绪队列允许最大进程数 响应时间和服务时间成正比,在响应时间 上优于FCFS,对长作业不利
可编辑ppt
15
• 多级反馈队列调度算法
1)系统中有多个进程就绪队列,每个就绪队列对应一个 调度级别,各级具有不同运行优先级,第一级最高。
2) 在执行作业控制语句时,系统或根进程 为其创建相应的子进程,然后为各子进程 分配资源和调度各子进程执行以完成作业 要求的任务。
可编辑ppt
4
2、作业调度
• 作业调度的功能
1)记录系统中各作业的状况 JCB
2)从后备队列中挑选出一部分作业投入 执行 3)为被选中作业做好执行前准备工作 4)在作业执行结束时做善后处理工作