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

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



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的实际应用和创新。🌐🔍

相关文章
|
8天前
|
算法 调度 云计算
操作系统中的调度算法:从理论到实践
在计算机科学领域,操作系统的调度算法是决定任务执行顺序的关键。本文首先概述了调度算法的基本概念和重要性,随后深入探讨了几种主要的调度算法,包括先来先服务、短作业优先、轮转与优先级调度等。通过引用最新的科研数据和实验证据,文章揭示了不同调度算法的性能表现和适用场景。此外,本文还讨论了现代操作系统中调度算法面临的挑战和未来的发展方向,强调了在多核处理器和云计算环境下调度策略的复杂性。最后,通过案例分析,展示了如何在实际系统中应用这些理论知识,以及在设计高效调度系统时需要考虑的因素。
|
10天前
|
机器学习/深度学习 算法 调度
操作系统中的进程调度策略
【6月更文挑战第26天】本文将深入探讨操作系统中的核心组件之一——进程调度。我们将从进程调度的基本概念入手,分析其重要性以及如何影响系统性能。文章将介绍几种常见的进程调度算法,并通过实例展示它们在实际操作系统中的应用。我们还将讨论现代操作系统中进程调度面临的挑战和未来可能的发展方向。
|
16天前
|
存储 负载均衡 算法
深入理解操作系统的进程调度
【6月更文挑战第20天】本文将探讨操作系统中的进程调度,包括其定义、重要性以及常见的调度算法。我们将通过具体的例子和代码片段来深入理解进程调度的工作原理和实现方式。最后,我们将讨论进程调度在现代操作系统中的应用和挑战。
|
18天前
|
调度
操作系统之进程调度机制
操作系统之进程调度机制
16 1
|
19天前
|
负载均衡 算法 调度
深入理解操作系统之进程调度
本文旨在探究操作系统核心机制之一——进程调度。文章首先概述进程与线程的基本概念,随后详细解析进程调度的目标、常见算法及其优缺点,并探讨现代操作系统中进程调度的高级话题,如多核调度和实时系统的调度策略。通过实例分析,本篇文章将帮助读者深化对进程调度复杂性的理解,并指出未来可能的发展方向。
|
3天前
|
机器学习/深度学习 算法 数据挖掘
操作系统调度算法的演进与性能分析
随着计算机科学的发展,操作系统作为硬件与软件之间的桥梁,其调度算法对系统性能有着举足轻重的影响。本文将探讨操作系统中调度算法的演变,从早期的简单调度策略到现代复杂的多级反馈队列和实时调度机制,并结合最新研究和实验数据,深入分析不同调度算法对系统吞吐量、响应时间及资源利用率的影响。通过对调度算法性能的定量评估,本文旨在为系统设计者提供优化决策的理论依据,同时为未来调度算法的研究指明方向。
7 0
|
9天前
|
算法 物联网 调度
操作系统调度算法的演进与性能评估
本文深入探讨了操作系统中进程调度算法的发展轨迹,从早期的先来先服务(FCFS)到现代的多级队列和反馈控制理论。通过引用实验数据、模拟结果和理论分析,文章揭示了不同调度策略如何影响系统性能,特别是在响应时间、吞吐量和公平性方面。同时,本文也讨论了在云计算和物联网等新兴领域,调度算法面临的挑战和未来的发展方向。
|
10天前
|
机器学习/深度学习 人工智能 算法
操作系统调度算法的演变与性能分析
操作系统作为计算机硬件和软件之间的桥梁,其调度算法的效率直接影响到系统的响应速度和资源利用率。本文将探讨从简单到复杂的各类调度算法,包括先来先服务、短作业优先、轮转法以及多级反馈队列等,通过数据分析揭示各算法的性能特点,并结合现代操作系统设计的需求,讨论未来调度算法的发展趋势。
|
10天前
|
机器学习/深度学习 算法 大数据
操作系统调度算法的演变与优化
在计算机科学领域中,操作系统的调度算法是核心的研究课题之一。本文深入探讨了操作系统调度算法的发展历程、当前挑战以及未来趋势。通过引用最新的科研数据和实验证据,本文旨在揭示调度算法如何适应现代计算需求的变化。我们将从理论到实践,详细分析不同调度算法的性能表现,并讨论如何利用这些算法来提升系统的整体效率和响应速度。
8 0
|
2月前
|
算法 调度 UED
深入理解操作系统之进程调度策略
【5月更文挑战第30天】 在操作系统的核心功能中,进程调度策略扮演着至关重要的角色。它决定了处理器资源如何高效合理地分配给众多竞争的进程。本文将深入探讨几种常见的进程调度算法,包括先来先服务(FCFS)、短作业优先(SJF)以及多级反馈队列(MLQN),并分析它们在不同场景下的性能表现和适用性。通过模拟实验数据和性能对比,我们将揭示各调度策略的优势与局限,为系统设计者提供选择指南。