操作系统笔记(二、进程管理2.2进程调度)

2.2.1 调度的目标与类型

1、专业术语
响应时间、周转时间、截止时间 (实时系统)、吞吐量 (批处理系统)

Q1:什么时候会启动作业调度?
1)有作业终止,2)处理器空闲了一段时间

Q2:我们用的PC机里面,没有进程调度概念,系统interactive user敲进去就创建进程了。选哪个进去靠算法,选多少进去依靠CPU的并发度。

2、进程调度的类型、目标、原则

1)类型:
按OS类型划分 批处理调度、分时调度、实时调度、多处理机调度
按调度层次划分:长程、中程、短程
【长程调度】:也称高级调度、作业调度。基于作业的调度,把作业从外存调到内存,创建进程,分配必要的系统资源,并将新创建的进程插入就绪队列,等待短程调度。
【中程调度:】也称中级调度,中程调度配合对换技术使用。(PC机不支持中程调度),与挂起有关 就绪挂起->就绪,阻塞挂起->阻塞。从外存选择一个挂起状态到内存(换入)
【短程调度:】又称进程调度、低级调度。是最频繁的。

操作系统笔记(二、进程管理2.2进程调度)_第1张图片
操作系统笔记(二、进程管理2.2进程调度)_第2张图片
关系图解释:
批处理作业在磁盘上排队,或者其它方式,通过长程调度创建进程。
就绪队列中的某个进程执行,通过短程调度
就绪挂起、阻塞挂起。从挂起队列里面,选进程激活,是中程调度
通常阻塞队列没有调度算法,通常是先来先服务

Q:什么时候发生进程调度?
时钟中断:执行到时间,TimeOut
I/O中断:
操作系统调用:
信号发生:

2)目标:
面向用户:满足用户对响应时间的要求,通常用来评价分时系统的性能;
面向系统:系统吞吐量;处理机的效率;公平性

响应时间:键盘提交任务->····屏幕显示
周转时间:进程到达时间->....进程完成
截止时间:实时系统里面,任务必须开始的截止时间

如何计算周转时间?
周转时间 = 完成时间 - 到达时间

调度对时间有较大的影响,周转时间是用来评价批处理系统的,后面我们以周转时间为例,来介绍调度算法。

3)原则:****************

2.2.3 进程调度算法
1、进程调度的决策模式(剥夺、非剥夺)
非剥夺:执行过程不能被打扰,只有自己放弃CPU。非剥夺主要用于批处理系统,降低了进程的周转时间

2、经典的进程调度法:

越往后越好 FCFS 时间片轮转法 短进程优先 最短剩余时间优先 响应比高优先 反馈调度算法
决策模式 非抢占 抢占 非抢占 抢占 非抢占 抢占

1)时间片轮转法:问:交互式系统中,时间片长度多少合适呢?答:满足70%-80%的进程可以在一个时间片完成
2)虚拟轮转调度:希望IO不要等太久,就分为两个就绪队列,IO有单独的就绪队列,IO优先级高,时间片短
3)剩余时间最短有限
3)响应比:等待时间 / 服务时间 + 1。困难:O1估计服务时间比较困难。O2计算开销大
4)反馈调度算法 FB : 设置多个就绪队列,第二个队列是上一个队列一个时间片没执行完的,每个队列的时间片可以不同,越往下的时间片可以越来越长,因为掉下来的都是长的,队列的优先级上面的优先

你可能感兴趣的:(操作系统)