当前位置:
文档之家› 第3章 处理机调度和死锁精品PPT课件
第3章 处理机调度和死锁精品PPT课件
时间片完 就绪队列
阻塞队列
进程调度 进程完成
CPU
等待事件
2020/11/29
阜阳师范学院计算机与信息学院
12
2. 具有高级和低级调度的调度队列模型
作业调度
后备队列
时间片完 就绪队列
进程调度 进程完成
CPU
事件1出现 事件2出现 事件n出现
2020/11/29
等待事件1 等待事件2 等待事件n
阜阳师范学院计算机与信息学院
2020/11/29
阜阳师范学院计算机与信息学院
4
1. 高级调度
又称为作业调度、宏观调度或长程 调度。用于决定把后备队列中的哪些作 业调入内存,为他们分配必要的资源, 并创建进程。
批处理系统 : 需要作业调度 分时系统 : 不需作业调度 实时系统 : 不需作业调度
2020/11/29
阜阳师范学院计算机与信息学院
Run time 27 3 5
0
2020/11/29
P1
P2 P3
27 30 35
阜阳师范学院计算机与信息学院
17
FCFS(First Come First Serve)
FCFS实例 下表列出了A、B、C、D四个作业分别到达系 统的时间、要求服务的时间、开始执行的时间 及各自的完成时间,计算出各自的周转时间和 带权周转时间。阜阳师范学Fra bibliotek计算机与信息学院
8
3. 中级调度
中级调度又称为交换调度或中程调 度。
它按一定的算法将外存中已具备运行 条件的进程换入内存,而将内存中处于 阻塞状态的某些进程换出至外存。
2020/11/29
阜阳师范学院计算机与信息学院
9
运行
就绪
调
度
阻塞
的
层
进程调度
次
挂起阻塞
创建
挂起就绪
中级调度
作业调度
2020/11/29
阜阳师范学院计算机与信息学院
2
2020/11/29
阜阳师范学院计算机与信息学院
3
3.1.1 高级、中级和低级调度
经历下述三级调度:
1、高级调度(High Scheduling) 2、中级调度(Intermediate-Level
Scheduling) 3、低级调度(Low Level Scheduling)
1 100 100 199
1 1 100 1.99
19
FCFS(First Come First Serve)
FCFS的特点:
FCFS调度算法有利于CPU繁忙型的作业, 而不利于I/O繁忙型的作业(进程)
比较有利于长作业,而不利于短作业
2020/11/29
阜阳师范学院计算机与信息学院
20
2. 短作业(进程)优先调度算法
13
3. 同时具有三级调度的调度队列模型
作业调度
批量作业 后备队列
交互型作业
时间片完
就绪 队 列
进程调度
进程完 CPU 成
中级调度 就绪、挂起队列
事件出现 中级调度
阻 塞、挂 起 队 列
挂起 事件出现 挂起
2020/11/29
阻塞队列
等待事件
阜阳师范学院计算机与信息学院
14
3.1.3 选择调度方式和调度算法的若干准则
退出
3.1.2 调度队列模型
1. 仅有进程调度的调度队列模型 2. 具有高级和低级调度的调度队列模型 3. 同时具有三级调度的调度队列模型
2020/11/29
阜阳师范学院计算机与信息学院
11
1. 仅有进程调度的调度队列模型
在分时系统中就绪进程组织成FIFO队列 形式,按时间片轮转方式运行。
交互用户 事 件 出 现
2020/11/29
作业情 况
调度算法
作业名 到达时间 服务时间
完成时间
FCFS 周转时间
带权周转时间
完成时间
SJF 周转时间
带权周转时间
A B C D E 平均
01 2 3 4
43 5 2 4
4 7 12 14 18 4 6 10 11 14 9 1 2 2 5.5 3.5 2.8 4 9 18 6 13 4 8 16 3 9 8 1 2.67 3.2 1.5 2.25 2.1
2020/11/29
阜阳师范学院计算机与信息学院
18
FCFS(First Come First Serve)
作业名 到达时 服务时 开始执 完成时 周转时 带权周
间
间
行时间 间
间
转时间
A
0
B
1
C
2
D
3
2020/11/29
1
0
1
100
1
101
1
101
102
100
102
202
阜阳师范学院计算机与信息学院
3.2.1 FCFS与SJF/SPF调度算法 3.2.2 高优先权优先调度算法 3.2.3 基于时间片的轮转调度算法
2020/11/29
阜阳师范学院计算机与信息学院
16
3.2.1 FCFS与SJF/SPF调度算法
1. 先来先服务调度算 法(FCFS)
按进程申请CPU(就 绪)的次序
process P1 P2 P3
5
1. 高级调度
执行作业调度时,必须作出两个决定: 接纳多少作业——每次接纳多少作业进入
内存,取决于多道程序度,即允许多少个 作业同时在内存中运行。 接纳哪些作业——应接纳哪些作业从外存 调入内存,取决于所采用的调度算法。
2020/11/29
阜阳师范学院计算机与信息学院
6
2. 低级调度
通常也称为进程调度、微观调度或短程 调度。进程调度是最基本的一种调度,在三种 OS中都有。用于决定就绪队列中哪个进程应 先获得处理机,并将处理机分配给选中的进程。
第3章 处理机调度与死锁
3.1 处理机调度的基本概念 3.2 调度算法 3.3 实时调度 3.4 产生死锁的原因和必要条件 3.5 预防死锁的方法 3.6 死锁的检测与解除
2020/11/29
阜阳师范学院计算机与信息学院
1
3.1 处理机调度的基本概念
3.1.1 高级调度、中级调度、低级调度 3.1.2 调度队列模型 3.1.3 选择调度方式和调度算法的若干准则
面向用户的准则
✓ 周转时间短 • 平均周转时间T • 平均带权周转时间(W= T(周 转)/Ts(CPU执行))
✓ 响应时间快 ✓ 截止时间的保证 ✓ 优先权准则
面向系统的准则
✓ 系统吞吐量高 ✓ 处理机利用率好 ✓ 各类资源的平衡利用
2020/11/29
阜阳师范学院计算机与信息学院
15
3.2 调度算法
为实现进程调度,应具有如下三个基本机制:
✓ 排队器
✓ 分派器
✓ 上下文切换
2020/11/29
阜阳师范学院计算机与信息学院
7
2. 低级调度
进程调度可采用下述两种调度方式: 非抢占方式 抢占方式 抢占的原则有: (1)优先权原则 (2)短作业(进程)优先原则 (3)时间片原则
2020/11/29