考研408--操作系统--day3--调度调度算法

(以下内容全部来自上述课程)
目录
- 处理及调度
- 1. 基础概念
- 2. 三个层次
- 2.1 高级调度(作业调度)
- 2.2 低级调度(进程调度)
- 2.3 中级调度(内存调度)(了解)
- 3. 三层调度的联系、对比
- 4. 小结
- 进程调度的...
- 1. 时机
- 2. 方式
- 3. 切换与过程
- 4. 小结
- 补充
- 1. 调度器/调度程序
- 2. 闲逛进程
- 调度算法的评价指标
- 1. CPU利用率
- 2. 系统吞吐量
- 3. 周转时间
- 4. 等待时间
- 5. 响应时间
- 6. 小结
- 调度算法
- 1. 先来先服务(FCFS)
- 1.1 FCFS
- 1.2 一览表
- 2. 短作业优先(SJF)
- 2.1 SPF
- 2.2 SRTN
- 2.3 小细节
- 2.4 一览表
- 3. 高响应比优先(HRRN)
- 3.1 HRRN
- 3.2 一览表
- 4. 小结
- 调度算法
- 1. 时间片轮转调度算法(RR)
- 1.1 时间片大小为2
- 1.2 时间片大小为5
- 1.3 与FCFS对比
- 1.4 一览表
- 2. 优先级调度算法
- 2.1 非抢占式
- 2.2 抢占式
- 2.3 补充
- 2.4 一览表
- 3. 多级反馈队列调度算法
- 3.1 例题
- 3.2 一览表
- 4. 小结
- 多级队列调度算法
- 多处理机调度
- 1. 单vs多
- 2. 负载均衡、处理机亲和性
- 3. 公共就绪队列
- 2. 私有就绪队列
- 4. 小结
处理及调度

1. 基础概念
调度就是谁先谁后的问题。

2. 三个层次
2.1 高级调度(作业调度)
外存->内存
进程和作业的概念及联系:
作业是用户提交给计算机的一组任务的集合。作业的生命周期包括提交、收容、执行和完成四个阶段。作业通常用于批处理系统中,例如用户提交一个作业后,系统会将其放入外存中的作业等待队列中,等待执行。
进程是作业执行的实体,是资源分配的基本单位。进程是程序在一个数据集上的一次执行。每个进程在创建后,总有相应的部分存在于内存中。进程的概念几乎应用于所有的多道程序系统中。
一个作业通常包括多个进程,这些进程共同完成一个任务,即作业。当用户提交作业后,系统会为作业创建进程。如果一个进程无法完成任务,系统会为该进程创建子进程。

2.2 低级调度(进程调度)
内存->CPU

2.3 中级调度(内存调度)(了解)
外存<->内存

补充:进程的挂起和七状态模型
3. 三层调度的联系、对比

4. 小结

进程调度的…

1. 时机
注意:操作系统内核程序的临界区---->不能
普通的临界区----> 能


2. 方式

3. 切换与过程
狭义---->选择进程
广义---->选择进程+进程切换

4. 小结

补充
1. 调度器/调度程序


2. 闲逛进程

调度算法的评价指标

1. CPU利用率

2. 系统吞吐量

3. 周转时间
排队等厕所的例子:你1分钟可以完事儿结果等了10分钟和别人要10分钟完事儿结果只用等1分钟,虽然周转时间都一样,但是体验感肯定不一样,所以引入了带权周转时间。(更公平一点)


4. 等待时间

5. 响应时间

6. 小结

调度算法

1. 先来先服务(FCFS)
1.1 FCFS

1.2 一览表

2. 短作业优先(SJF)
2.1 SPF

2.2 SRTN


2.3 小细节

2.4 一览表

3. 高响应比优先(HRRN)
思考:
3.1 HRRN

3.2 一览表

4. 小结

调度算法

1. 时间片轮转调度算法(RR)
1.1 时间片大小为2



1.2 时间片大小为5

1.3 与FCFS对比


1.4 一览表
时间片太大:退化为FCFS,增大进程响应时间;
时间片太小:频繁切换,降低执行效率

2. 优先级调度算法
2.1 非抢占式

2.2 抢占式

2.3 补充

2.4 一览表

3. 多级反馈队列调度算法
思考:
3.1 例题

3.2 一览表

4. 小结

多级队列调度算法
不同队列使用不同调度算法。

多处理机调度

1. 单vs多

2. 负载均衡、处理机亲和性

3. 公共就绪队列
P1优先级最高,先把P1给CPU1,剩下中P4优先级最高,再把P4给CPU4,期间就绪进程队列需要上锁,要不然就两个CPU都抢P1了。
软亲和性: 进程要在指定的 CPU 上尽量长时间地运行而不被迁移到其他CPU。

2. 私有就绪队列



4. 小结




