吐血整理!操作系统【处理机调度】

简介: 吐血整理!操作系统【处理机调度】



1 基本概念

1.1 总览

1.2 什么是调度

1.2.1 调度

1.2.2 处理机调度

1.3 调度的三个层次

1.3.1 高级调度

(1)是针对作业的调度,传统批处理机系统中作业是必须全部执行完才可以结束的

(2)概念

1.3.2 中级调度(内存调度)

(1)操作系统会将暂时不可以运行的进程调至外存等待(虚拟存储技术),知道进程重新具备了运行条件或内存有空闲时再重新调入内存。这样做可以提高内存利用率、系统吞吐量。此时的进程所处的状态为挂起状态。

(2)PCB不会一起调到外存,依然在内存中,操作系统将被挂起的PCB放入挂起队列中

(3)解释

1.3.3 低级调度(进程调度)

1.4 七状态模型

1.5 三层调度的联系与对比

1.6 总结

2 方式与过程

2.1 总览

2.2 进程调度的时机

2.2.1 需要进行调度的情况

2.2.2 不能进行调度的情况

2.3 临界区

2.3.1 临界资源

一个时间段内只允许一个进程使用的资源。各进程需要互斥的访问临界资源

2.3.2 临界区

访问临界资源的那段代码

2.3.3 分类

(1)内核程序临界区

① 一般用于访问某种数据结构,比如由各就绪进程的PCB组成的就绪队列。

② 在访问内核程序临界区期间不可以进行调度与切换,否则容易造成系统的错误。

(2)普通临界区:

① 可以在访问普通临界区时进行调度与切换。

②比如,当一个进程占用了打印机这种速度很慢的I/O设备,假如此时不进行调度,则进程在等待IO处理完成的期间CPU会一直处于空闲状态,

2.4 进程调度的方式

2.4.1 分类

2.4.2 方式

2.5 总结

3 处理机调度算法(非抢占式)

3.1 总览

3.2 调度算法的评价指标

3.2.1 CPU利用率

3.2.2 系统吞吐量

3.2.3 周转时间

3.2.4 带权周转时间

3.2.5 等待时间

3.2.6 响应时间

3.3 调度算法的学习思路

3.4 调度算法

3.4.1 先来先服务(FCFS,First Come first Serve)

3.4.2 短作业优先(SJF,Shortest Job First)

(1)短作业优先调度

(2)最短剩余时间优先算法

(3)注意几个小细节

(4)短作业优先

3.4.3 高响应比优先(HRRN,Highest Response Ratio Next)

(1)概述

(2)总结

4. 注意

3.5 总结

4 处理机调度算法(抢占式)

4.1 总览

4.2 各算法

4.2.1 时间片轮转(RR,Round-Robin)

(1)调度过程详解

以下表为例:

①假设时间片大小为2

最终结果

②假设时间片大小为5

最终结果:

(2)注意

4.2.2 优先级调度算法

(1)非抢占式的优先级调度算法例题

(2)抢占式的优先级调度算法例题

(3)补充

(4)如何合理的设置进程的优先级?

①为什么要偏好I/O型进程呢?

(5)对于动态优先级,什么时候该去调整呢

4.2.3 多级反馈队列算法

(1)算法步骤

4.3 总结

5 总结

操作系统,如默默守护的守夜者,无声地管理硬件与软件的交流,为计算机创造和谐秩序。

它是无形的引导者,让复杂的任务变得井然有序,为用户提供无忧体验。

操作系统的巧妙设计,让计算机变得更加智能高效,让人与科技之间的交流更加顺畅。

在每一次启动中,它如信任的伙伴,带领我们进入数字世界的奇妙旅程。

渴望挑战操作系统的学习路径和掌握进阶技术?不妨点击下方链接,一同探讨更多操作系统的奇迹吧。我们推出了引领趋势的💻OS专栏:《OS从基础到进阶》 ,旨在深度探索OS的实际应用和创新。🌐🔍

相关文章
|
算法 Linux 数据处理
《操作系统》—— 处理机调度算法
《操作系统》—— 处理机调度算法
|
2月前
|
算法 调度
操作系统基础:处理机调度【下】
操作系统基础:处理机调度【下】
|
1月前
|
算法 网络协议 调度
操作系统 -- CPU调度
操作系统 -- CPU调度
18 0
|
2月前
|
存储 调度
操作系统基础:处理机调度【上】
操作系统基础:处理机调度【上】
|
3月前
|
存储 算法 调度
【操作系统】处理机调度
【操作系统】处理机调度
116 0
|
3月前
|
算法 安全 调度
操作系统:单处理机调度
操作系统:单处理机调度
96 0
|
3月前
|
算法 程序员 调度
操作系统:线程同步和调度
操作系统:线程同步和调度
25 0
|
21天前
|
监控 Unix Linux
Linux操作系统调优相关工具(四)查看Network运行状态 和系统整体运行状态
Linux操作系统调优相关工具(四)查看Network运行状态 和系统整体运行状态
32 0
|
22天前
|
Linux 编译器 开发者
Linux设备树解析:桥接硬件与操作系统的关键架构
在探索Linux的庞大和复杂世界时🌌,我们经常会遇到许多关键概念和工具🛠️,它们使得Linux成为了一个强大和灵活的操作系统💪。其中,"设备树"(Device Tree)是一个不可或缺的部分🌲,尤其是在嵌入式系统🖥️和多平台硬件支持方面🔌。让我们深入了解Linux设备树是什么,它的起源,以及为什么Linux需要它🌳。
Linux设备树解析:桥接硬件与操作系统的关键架构
|
1月前
|
Linux 数据安全/隐私保护 虚拟化
Linux技术基础(1)——操作系统的安装
本文是龙蜥操作系统(Anolis OS) 8.4 的安装指南,用户可以从[龙蜥社区下载页面](https://openanolis.cn/download)获取ISO镜像。安装方法包括物理机的光驱和USB闪存方式,以及虚拟机中的VMware Workstation Pro设置。安装过程涉及选择语言、配置安装目标、选择软件集合和内核,设置Root密码及创建新用户。安装完成后,可通过文本模式或图形化界面验证系统版本,如Anolis OS 8.4,标志着安装成功。