前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >10-处理机调度的概念与层次

10-处理机调度的概念与层次

作者头像
Ywrby
发布于 2022-10-27 05:04:19
发布于 2022-10-27 05:04:19
5350
举报
文章被收录于专栏:YwrbyYwrby

调度

概念

当有多项任务需要处理时,由于资源有限,所有任务无法同时处理,此时就需要确定某种规则来决定各项任务的执行顺序,这就是调度

在多道程序系统中,进程的数量往往多于处理机个数,这样不可能同时并行处理各个进程

处理机调度,就是从就绪队列中按照一定的算法选择一个进程并将处理机分配给该进程使用,以实现进程的并发执行

调度的三个层次

高级调度(作业调度)

由于内存空间有限,有时无法将用户提交的作业全部放入内存,因此就需要确定某种规则来决定作业调入内存的顺序,即高级调度

高级调度(作业调度)。按一定的原则从外存上处于后备队列(存储所有还没有进过内存的任务)的作业中挑选一个或多个作业,给他们分配内存等必要资源,并建立相应进程(建立PCB,以使他们获得竞争处理机的权利

高级调度是辅存(外存)与内存之间的调度。每个作业只调入一次,调出一次。作业调入时会建立相应的PCB,作业调出时才撤销PCB。高级调度主要是指调入的问题,因为只有调入的时机需要操作系统来确定,但调出的时机必然是作业运行结束才调出。(即对于每项任务,高级调度只执行一次)

中级调度(内存调度)

引入了虚拟存储技术之后,可将暂时不能运行的进程调至外存等待。等它重新具备了运行条件且内存又稍有空闲时,再重新调入内存。

这么做的目的是为了提高内存利用率和系统吞吐量

暂时调到外存等待的进程状态为挂起状态。值得注意的是,PCB并不会一起调到外存,而是会常驻内存。PCB中会记录进程数据在外存中的存放位置,进程状态等信息,操作系统通过内存中的PCB来保持对各个进程的监控、管理。被挂起的进程PCB会被放到的挂起队列中

中级调度(内存调度),就是要决定将哪个处于挂起状态的进程重新调入内存一个进程可能会被多次调出、调入内存,因此中级调度发生的频率要比高级调度更高

挂起状态与七状态模型

暂时调到外存等待的进程状态称为挂起状态(挂起态suspend)

挂起态又可以进一步细分为就绪挂起和阻塞挂起两种状态

与五状态模型共同衍生出了七状态模型

低级调度(进程调度)

低级调度(进程调度),其主要任务是按照某种方法和策略从就绪队列中选取一一个进程, 将处理机分配给它。

进程调度是操作系统中最基本的一种调度, 在一般的操作系统中都必须配置进程调度。

进程调度的频率很高,一般几十毫秒一次。

三级调度比较

-

要做什么

调度发生在

发生频率

对进程状态的影响

高级调度(作业调度)

按照某种规则,从后备队列中选择合适的作业将其调入内存,并为其创建进程

外存->内存(面向作业)

最低

无->创建态->就绪态

中级调度(内存调度)

按照某种规则,从挂起队列中选择合适的进程将其数据调回内存

外存->内存(面向进程)

中等

挂起态->就绪态(阻塞挂起->阻塞态,就绪挂起->就绪态等等……)

低级调度(进程调度)

按照某种规则,从就绪队列中选择一个进程为其分配处理机

内存->CPU

最高

就绪态->运行态

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-11-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
《Linux操作系统编程》第二章 进程运行与调度: 了解进程的定义与特征、进程的状态与切换、进程管理的数据结构、进程的创建与终止、阻塞与唤醒、挂起与激活以及处理机调度的相关概念
要求学生了解进程的定义与特征、进程的状态与切换、进程管理的数据结构、进程的创建与终止、阻塞与唤醒、挂起与激活以及处理机调度的相关概念。
猫头虎
2024/04/08
4670
《Linux操作系统编程》第二章 进程运行与调度: 了解进程的定义与特征、进程的状态与切换、进程管理的数据结构、进程的创建与终止、阻塞与唤醒、挂起与激活以及处理机调度的相关概念
9.处理机调度与死锁 原
一个批处理型的作业,从进入系统并驻留在外存的后备队列上开始,直至作业运行完毕,可能要经历的三级调度:
青木
2019/03/12
4810
linux的一个进程调度周期内新加入进程的处理机制分析
        最近在研究Linux的短程调度(进程调度包括长程调度、中程调度和短程调度,详见参考博客1)相关的算法和调度器,由参考博客1可知,短程调度的主要任务是按照某种策略和算法将处理机分配给一个处于就绪状态的进程,分为抢占式和非抢占式。中程调度(又叫中级调度)的主要任务则是按照给定的原则和策略,将处于外存交换区中的就绪状态或等待状态的进程调入内存,或把处于内存就绪状态或内存等待状态的进程交换到外存交换区。长程调度(又叫高级调度)的主要任务则是将已进入系统并处于后备状态的作业按某种算法选择一个或一批,为其建立进程,并进入主机,装入内存;当该作业执行完毕时,负责回收系统资源。如下图所示:
saintyyu
2021/11/22
4970
linux的一个进程调度周期内新加入进程的处理机制分析
细说进程五种状态的生老病死——双胞胎兄弟Java线程
java线程的五种状态其实要真正高清,只需要明白计算机操作系统中进程的知识,原理都是相同的。
intsmaze-刘洋
2018/08/29
1.1K0
进程调度的概念[通俗易懂]
在多道程序系统中,进程的数量往往多于处理机的个数,进程争用处理机的情况就在所难免。处理机调度是对处理机进行分配,就是从就绪队列中,按照一定的算法(公平、髙效)选择一个进程并将处理机分配给它运行,以实现进程并发地执行。 处理机调度是多道程序操作系统的基础,它是操作系统设计的核心问题。
全栈程序员站长
2022/11/11
9070
进程调度的概念[通俗易懂]
软考系统架构设计师(三):操作系统
操作系统是直接控制和管理计算机硬件、软件资源,合理地对各类作业进行调度,以方便用户使用的程序集合。
陈大剩博客
2023/03/22
8140
软考系统架构设计师(三):操作系统
作业调度和进程调度的辨析题_进程调度的功能有哪些
很多学习完《操作系统原理》这门课程的小伙伴都应该对“FCFS(先到先服务)”、“SJF(短作业优先)”等调度算法原理比较熟悉。但是在实际做题的时候,往往一不小心就把概念搞错,不容易区分“作业调度”和“进程调度”的区别。下面我主要针对这两个概念进行解析并给出经典习题解答。 PS:本博客并不详解每种调度算法的原理,因此有这方面需求的小伙伴可以直接pass了。
全栈程序员站长
2022/11/11
1K0
作业调度和进程调度的辨析题_进程调度的功能有哪些
【计算机基础】操作系统
是一组控制和管理计算机硬件和软件资源,合理对各类作业进行调度,以及方便用户使用的程序集合。
章鱼carl
2022/03/31
9680
【计算机基础】操作系统
操作系统基础知识整理
1、操作系统分类 批处理操作系统、分时操作系统(Unix)、实时操作系统、网络操作系统、分布式操作系统、微机操作系统(Linux、Windows、IOS等)、嵌入式操作系统。 2、操作系统的4个特征:并发性、共享性、虚拟性、不确定性。 3、操作系统的功能有:处理机管理、文件管理、存储管理、设备管理、作业管理。 处理机管理:也称进程管理。实质上是对处理机执行时间进行管理,采用多道程序等技术将CPU的时间真正合理地分配给每个任务。主要包括进程管理、进程同步、进程通信和进程调度。 文件管理:又称信息管理。主要包括
mukekeheart
2018/02/27
1.2K0
操作系统基础知识整理
操作系统之调度
调度研究的问题:当有一堆任务要处理,但由于资源有限,这些事情没法同时处理。这就需要确定某种规则来决定处理这些任务的顺序,这就是调度研究的问题。
kif
2023/02/27
8440
开发成长之路(21)-- 不可不知的操作系统知识(1)
最下面是硬件系统;最上面是使用计算机的人,即各种各样的用户;人与硬件系统之间是软件系统。系统软件是最靠近硬件的一层,其次是支撑软件和应用软件。
看、未来
2021/09/18
4860
操作系统习题知识点
操作系统有硬件和软件组成,硬件是CPUC软件建立与活动的基础,而软件是对硬件功能的扩充。硬件包括CPU、内存、I/O设备和总线等,软件通常分为应用软件、支撑软件和系统软件。
kif
2023/02/27
1.9K0
操作系统习题知识点
处理机调度
在多道程序环境下,内存中存在着多个进程,进程的数目往往多于处理机的数目。这就要求系统能按某种算法,动态地将处理机分配给一个处于就绪状态的进程,使之执行。分配处理机的任务是由处理机调度程序完成的。
真正的飞鱼
2023/06/29
2580
1.进程管理
11、对进程的描述错误的是( d) A.进程是动态的概念 B.进程执行需要处理机 C.进程是有生命期的 D.进程是指令的集合
见贤思齊
2020/08/05
5540
1.进程管理
操作系统笔记【处理机调度知识】
CPU 在计算机系统中是非常重要的,但是早期的时候非常简单,是因为它像其他资源一样被一个作业所独占,不存在什么处理及分配或者调度的问题,但是随着各种多道程序的设计以及不同类型的操作系统的出现,不同的CPU的管理方法将会为用户提供不同性能的操作系统
BWH_Steven
2020/06/03
1.4K0
操作系统-超20000字的“总结”
从单道批处理系统对CPU的利用情况可看出,作业运行过程中若发生IO请求,高速的CPU要等待低速的I/O操作完成,导致CPU资源利用率和系统吞吐量降低。
Karos
2023/02/24
1.4K0
操作系统-超20000字的“总结”
大学课程 | 计算机操作系统
(3) 模块接口法的优缺点: 优点: ①提高OS设计的正确性,可理解性,可维护性 ②增强OS的可适应性 ③加速OS的开发过程 缺点: ①接口很难满足实际需求 ②无序模块法,无法寻找一个可靠的决定顺序
Justlovesmile
2021/12/14
9510
大学课程 | 计算机操作系统
处理器调度及算法
在多道程序环境下,主存中有着多个进程,其数目往往多于处理机数目。这就要求系统能按某种算法,动态地把处理机分配给就绪队列中的一个进程,使之执行。分配处理机的任务是由处理机调度程序完成的。由于处理机是最重要的计算机资源,提高处理机的利用率及改善系统性能(吞吐量、响应时间),在很大程度上取决于处理机调度性能的好坏,因而,处理机的调度问题便成为操作系统设计的中心问题之一。
搬砖俱乐部
2019/06/24
1.5K0
『操作系统』 进程的描述与控制 Part 1 前驱图与程序执行
一个程序由若干个程序段组成,而这些程序段的执行必须是顺序的,这种程序执行的方式就称为程序的顺序执行。
风骨散人Chiam
2021/09/06
1.3K0
22-内存空间扩充(覆盖与交换)
早期计算机内存很小,因此经常出现内存大小不够使用的情况,因此人们引入了覆盖技术,用来解决“程序大小超过物理内存总和”的问题
Ywrby
2022/10/27
8520
22-内存空间扩充(覆盖与交换)
推荐阅读
相关推荐
《Linux操作系统编程》第二章 进程运行与调度: 了解进程的定义与特征、进程的状态与切换、进程管理的数据结构、进程的创建与终止、阻塞与唤醒、挂起与激活以及处理机调度的相关概念
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档