操作系统 第三章 处理机调度与死锁

操作系统 第三章 处理机调度与死锁

一、处理机调度

1、概念及层次

0.思维导图

image

1.调度的基本概念

image

2.调度的三个层次

(1)高级调度( 作业调度)

image

(2)中级调度(内存调度)

image

(3)进程的挂起状态与七状态模型

image

(4)低级调度(进程调度)

image

(5)三层调度的联系和对比

image

2、进程调度的时机(主动放弃与被动放弃)、切换与过程(广义与狭义)、方式(非剥夺与剥夺)

0.思维导图

image

1.时机

(1)什么时候进行进程调度?

image

(2)什么时候不能进行进程调度?

image

(3)OS内核程序临界区与普通临界区的进程调度情况

image

image

2.进程调度的方式
  • 所谓进程调度方式,是指当某个进程正在处理机上执行时,若有某个更为重要或紧迫的进程需要处理,即有优先权更高的进程进入就绪队列,此时应如何分配处理机。

image

3.进程的切换和过程

image

3、调度算法的评价指标

0.思维导图

image

1.CPU利用率

image

2.系统吞吐量

image

3.周转时间

image

image

4.等待时间

image

5.响应时间

image

4、作业/进程调度算法

0.思维导图

image

image

1.先来先服务—FCFS
  • First come first sever

image

image

2.短作业优先—SJF
  • Shortest Job First

image

  • 非抢占式—SJF

image

  • 抢占式—SJF(SRTN)

image

image

  • 注意几个细节

image

3.高响应比优先—HRRN
  • Highest Response Ratio Next

image

image

image

注:三种算法的对比和总结

image

4、时间片轮转——RR

image

  • 时间片为2举例

image

image

  • 以时间片为5举例

image

  • 可能出现的问题,比如与FCFS对比

image

image

5.优先级调度算法

image

  • 非抢占式例子

image

  • 抢占式例子

image

  • 补充

image

6.多级反馈队列调度算法

image

image

  • 举个例子

image

image

image

image

image

image

注:三种算法的对比总结

image

二、死锁

0.思维导图

image

1.什么是死锁?

image

image

2.死锁、饥饿、死循环的区别

image

image

3.死锁产生的四个必要条件

image

4.什么时候会发生死锁?

image

5.死锁的处理策略

image

(1)预防死锁

① 破坏互斥条件

image

② 破坏不可剥夺条件(不可抢夺条件)

image

③ 破坏请求和保持条件

image

④ 破坏循环等待条件

image

(2)避免死锁

① 什么是安全序列?

  • 所谓安全序列

image

image

image

image

image

② 安全序列、安全状态、不安全状态、死锁之间的联系

image

image

③ 避免系统进入不安全状态------银行家算法

image

image

image

image

image

image

image

image

  • 使用代码实现

image

image

image

(3)死锁的检测和解除

image

① 死锁的检测

image

举个例子,可以消除所有边,即无死锁发生

image

image

image

举个例子,不可消除所有边,即产生死锁

image

image

image

image

② 死锁的解除

image

  • 22
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值