小言_互联网的博客

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

491人阅读  评论(0)

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

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

第三章、进程调度与死锁

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

1. 功能

2. 时机

二、进程调度算法

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

2. 调度算法

a.先来先服务调度算法

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

b.短进程优先调度算法

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

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

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

c.优先权调度算法

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

俩种类型:



优先权类型

存在的问题

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

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

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.死锁的解除

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


转载:https://blog.csdn.net/weixin_43606158/article/details/108043062
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场