操作系统概论【三】- - 进程调度与死锁

感谢内容提供者:金牛区吴迪软件开发工作室

接上一篇:操作系统概论【二】 - - 进程管理

文章目录

  • 第三章、进程调度与死锁
    • 一、进程调度的功能与时机
        • 1. 功能
        • 2. 时机
    • 二、进程调度算法
        • 1. 选择调度方式和算法的若干准则
        • 2. 调度算法
          • a.先来先服务调度算法
          • b.短进程优先调度算法
          • c.优先权调度算法
            • 俩种类型:
            • 优先权类型
            • 存在的问题
          • e.时间片轮转调度算法
            • 时间片大小的确定
          • f.多级队列调度算法
          • g.多级反馈队列调度算法
    • 三、实时系统中的调度
        • 1. 实现实时调度的基本条件
          • a.提供必要的调度信息
          • b.系统处理能力强
          • c.采用抢占式调度机制(广泛)
          • d.具有快速切换机制
        • 2. 常用的实时调度算法
          • a.最早截止时间优先算法EDF
          • b.最低松弛度优先算法LLF
    • 四、进程切换
        • 1. 进程切换的含义
        • 2. 进程切换的步骤
          • a.Step1
          • b.Step2
          • c.Step3
          • d.Step4
          • e.Step5
          • f.Step6
          • g.Step7
    • 五、多处理器调度
        • 1. 多处理器系统的类型
        • 2. 多处理器系统中进程分配方式
          • a.对称系统中的俩种分配方式
            • 静态分配
            • 动态分配
          • b.非对称系统中的分配方式
        • 3. 进程(线程)调度方式
          • a.自调度
          • b.成组调度
          • c.专用处理器分配
    • 六、死锁
        • 1. 死锁的定义
        • 2. 产生死锁的原因和必要条件
          • 原因:
          • 必要条件:
        • 3. 处理死锁的基本方法
          • a.死锁的预防
          • b.死锁的避免
          • c.死锁的检测
            • 调用检测算法的时机
            • 资源分配图
            • 死锁定理
          • d.死锁的解除

第三章、进程调度与死锁

操作系统概论【三】- - 进程调度与死锁_第1张图片

一、进程调度的功能与时机

1. 功能

操作系统概论【三】- - 进程调度与死锁_第2张图片

2. 时机

操作系统概论【三】- - 进程调度与死锁_第3张图片

二、进程调度算法

1. 选择调度方式和算法的若干准则

操作系统概论【三】- - 进程调度与死锁_第4张图片

2. 调度算法

a.先来先服务调度算法

含义:
从就绪队列的队首选择最先到达就绪队列的进程,为该进程分配CPU。

操作系统概论【三】- - 进程调度与死锁_第5张图片

b.短进程优先调度算法

含义:
从就绪队列中选择估计运行时间最短的进程,为该进程分配CPU

优点:与FCFS算法相比,短进程优先算法能有效降低进程的平均等待时间,提高系统吞吐量。

缺点:
1.对长进程不利
2.不能保证紧迫进程的处理
3.进程长短由用户估计,不一定准确

操作系统概论【三】- - 进程调度与死锁_第6张图片

c.优先权调度算法

含义:该算法中,系统将CPU分配给就绪队列中优先权最高的进程。

俩种类型:

操作系统概论【三】- - 进程调度与死锁_第7张图片
操作系统概论【三】- - 进程调度与死锁_第8张图片
操作系统概论【三】- - 进程调度与死锁_第9张图片

优先权类型

操作系统概论【三】- - 进程调度与死锁_第10张图片

存在的问题

无穷阻塞,即“饥饿问题”【优先级高的持续来的话优先级低的始终无法排到】

解决的方案:
增加等待时间很长的进程的优先权,即“老化技术”。

e.时间片轮转调度算法

含义:
操作系统概论【三】- - 进程调度与死锁_第11张图片

时间片大小的确定

操作系统概论【三】- - 进程调度与死锁_第12张图片

f.多级队列调度算法

含义:
将就绪队列分成多个独立队列,每个队列有自己的调度算法。

操作系统概论【三】- - 进程调度与死锁_第13张图片

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

含义:
建立多个优先权不同的就绪队列,每个队列有大小不同的时间片

操作系统概论【三】- - 进程调度与死锁_第14张图片

三、实时系统中的调度

1. 实现实时调度的基本条件

a.提供必要的调度信息

操作系统概论【三】- - 进程调度与死锁_第15张图片

b.系统处理能力强

操作系统概论【三】- - 进程调度与死锁_第16张图片
操作系统概论【三】- - 进程调度与死锁_第17张图片

真题:
操作系统概论【三】- - 进程调度与死锁_第18张图片

c.采用抢占式调度机制(广泛)
d.具有快速切换机制
  • 对外部中断的快速响应能力
  • 快速的进程切换能力

2. 常用的实时调度算法

a.最早截止时间优先算法EDF

在这里插入图片描述

b.最低松弛度优先算法LLF

操作系统概论【三】- - 进程调度与死锁_第19张图片

四、进程切换

1. 进程切换的含义

操作系统概论【三】- - 进程调度与死锁_第20张图片

2. 进程切换的步骤

a.Step1

操作系统概论【三】- - 进程调度与死锁_第21张图片

b.Step2

操作系统概论【三】- - 进程调度与死锁_第22张图片

c.Step3

操作系统概论【三】- - 进程调度与死锁_第23张图片

d.Step4

操作系统概论【三】- - 进程调度与死锁_第24张图片

e.Step5

操作系统概论【三】- - 进程调度与死锁_第25张图片

f.Step6

在这里插入图片描述

g.Step7

在这里插入图片描述

五、多处理器调度

操作系统概论【三】- - 进程调度与死锁_第26张图片

1. 多处理器系统的类型

操作系统概论【三】- - 进程调度与死锁_第27张图片

2. 多处理器系统中进程分配方式

a.对称系统中的俩种分配方式

操作系统概论【三】- - 进程调度与死锁_第28张图片

静态分配

操作系统概论【三】- - 进程调度与死锁_第29张图片

动态分配

操作系统概论【三】- - 进程调度与死锁_第30张图片

b.非对称系统中的分配方式

操作系统概论【三】- - 进程调度与死锁_第31张图片

3. 进程(线程)调度方式

a.自调度

自调度是最常用最简单的方式

操作系统概论【三】- - 进程调度与死锁_第32张图片
操作系统概论【三】- - 进程调度与死锁_第33张图片

b.成组调度

操作系统概论【三】- - 进程调度与死锁_第34张图片
操作系统概论【三】- - 进程调度与死锁_第35张图片

c.专用处理器分配

操作系统概论【三】- - 进程调度与死锁_第36张图片
操作系统概论【三】- - 进程调度与死锁_第37张图片
操作系统概论【三】- - 进程调度与死锁_第38张图片

六、死锁

操作系统概论【三】- - 进程调度与死锁_第39张图片

1. 死锁的定义

由于多个进程竞争共享资源而引起的进程不能向前推进的僵死状态称为死锁。

2. 产生死锁的原因和必要条件

原因:

竞争共享资源且分配资源的顺序不当是产生死锁的原因。

必要条件:
  • 互斥条件
  • 请求和保持条件
  • 不剥夺条件
  • 环路等待条件

3. 处理死锁的基本方法

a.死锁的预防

通过破坏死锁的产生条件来保证不发生死锁。

互斥条件无法破坏。
操作系统概论【三】- - 进程调度与死锁_第40张图片

b.死锁的避免

通过 算法合理分配资源【银行家算法】 来保证不发生死锁

操作系统概论【三】- - 进程调度与死锁_第41张图片

c.死锁的检测

检测当前系统是否出现死锁

调用检测算法的时机

操作系统概论【三】- - 进程调度与死锁_第42张图片

资源分配图

操作系统概论【三】- - 进程调度与死锁_第43张图片

死锁定理

在这里插入图片描述
操作系统概论【三】- - 进程调度与死锁_第44张图片

d.死锁的解除

检测到系统有死锁后进行解除

操作系统概论【三】- - 进程调度与死锁_第45张图片

你可能感兴趣的:(成人自考学习笔记,操作系统概论重点总结,进程调度与死锁,操作系统,操作系统概论,进程调度算法,死锁解决-哲学家用餐算法)