操作系统-进程和线程-处理机调度

news2024/11/23 18:38:07

目录

一、调度的概念

1.1调度的层次

1.1.1高级调度(作业调度)

1.1.2中级调度(内存调度)

1.1.3低级调度(进程调度)

1.2状态模型

1.3调度的时机

1.4调度方式

1.5进程的切换与过程

二、调度算法的评价指标

2.1CPU利用率

2.2吞吐量

2.3周转时间

2.4带权周转时间

2.5等待时间

2.6响应时间

三、调度算法

3.1先来先服务(FCFS)

3.2短作业优先(SJF)

3.3高响应比优先(HRRN)

3.4时间片轮转调度算法(RR)

3.5优先级算法

3.6多级反馈队列调度算法

3.7多级队列调度算法


一、调度的概念

多道程序中,进程数量往往多于处理机个数,因此进程争用处理机的情况在所难免。处理机调度是对处理机进行分配

1.1调度的层次

1.1.1高级调度(作业调度)

按一定的原则从外存的作业后备队列中挑选一个作业调入内存,并创建进程,每个作业只调入一次,调出一次,作业调入时会建立PCB,调出时才撤销PCB

1.1.2中级调度(内存调度)

按某策略决定将哪个处于挂起状态的进程重新调入内存

内存不够时,可将某些进程的数据调出外存。等内存空闲或者进程需要运行时再重新调入内存

1.1.3低级调度(进程调度)

按照某种算法从就绪队列中年选择一个进程为其分配处理机

1.2状态模型

1.3调度的时机

1.4调度方式

非剥夺调度方式,又称非抢占式方式。即允许进程主动放弃处理机。在运行过程中即便有更紧迫的任务到达,当前进程依然会继续使用处理机,直到该进程终止或主动进入阻塞态

剥夺调度方式:又称抢占式方式,当一个进程正在处理机上执行时,如果有一个更重要或更紧迫的进程需要使用处理机,则立即暂停正在执行的处理机,将处理机分配给更重要紧迫的进程

1.5进程的切换与过程

二、调度算法的评价指标

2.1CPU利用率

2.2吞吐量

单位时间内完成作业的数量

2.3周转时间

指从作业被提交给系统开始,到作业完成为止的这段时间间隔

2.4带权周转时间

 

2.5等待时间

指进程/作业处于等待处理机状态时间之和,等待时间越长,用户满意度越低

对进程:等待时间为进程建立后等待被服务的时间之和 

对作业:不仅考虑建立进程后的等待时间,还有加上作业在外存后备队列中等待时间

2.6响应时间

指用户提交请求到首次产生响应所用时间

三、调度算法

 

3.1先来先服务(FCFS)

思想:类似队列先来先到

规则:按照作业/进程到达先后顺序进行服务

是否可抢占式:非抢占式

优点:公平、算法实现简单

缺点:对长作业有利,对短作业不利

不会饥饿

3.2短作业优先(SJF)

思想:追求最少的平均等待时间,最少的平均周转时间,最少的平均带权周转时间

规则:最短作业/进程优先得到服务

是否可抢占式:非抢占式,也有抢占式-----最短剩余时间优先算法

优点:"最短的"平均等待时间、平均周转时间

缺点:不公平。对短作业有利,长作业不利。

一直有短作业,长作业就会得不到服务会有饥饿现象

3.3高响应比优先(HRRN)

思想:要综合考虑作业/进程的等待时间和要求服务时间

规则:在每次调度时计算各个作业/进程的响应比,选择响应比最高的作业/进程为其服务                            响应比=(等待时间+要求服务时间)/要求服务时间

是否可抢占式:非抢占式

优点:综合考虑等待时间和运行时间。等待时间相同时,要求服务时间短的优先。要求服务时间相同时,等待时间长的优先。对长作业来说,随着等待时间越来越长,响应比越来越大,避免饥饿

不会饥饿

3.4时间片轮转调度算法(RR)

思想:公平、轮流地为各个进程服务,让每个进程在一定时间间隔内都可以得到响应

规则:按照各进程到达就绪队列得顺序,轮流让各个进程执行一个时间片。若进程未在一个时间片内执行完,则剥夺处理机,将进程重新放到就绪队列队尾重新排队

是否可抢占式:抢占式

优点:公平、需要快,适合分时操作系统

缺点:由高频率的进程切换,因此有一定开销,不区分任务紧急程度

不会饥饿

时间片太大会退化先来先服务调度算法,并会增大进程响应时间,因此时间片不能太大

进程切换太频繁,也不能太小 

3.5优先级算法

思想:根据紧急程度决定处理顺序

规则:每个作业/进程有各自的优先级,优先级高的先调度        

是否可抢占式:抢占式/非抢占式都有

优点:优先级区分紧急程度。可灵活地调整对各作业/进程的偏好程度

缺点:源源不断有优先级高的任务到来,会有饥饿

会饥饿

 3.6多级反馈队列调度算法

思想:对其他调度算法的折中权衡

规则:1.设置多级就绪队列,各级队列优先级高到低,时间片小到大,2.新进程到第1级队列按FCFS原则排队分配时间片,若时间片完进程还未结束,则进入下一级队列队尾,如果已经是最后一级就放回队列队尾3.只有第k级队列为空时,才会为k+1级队头进程分配时间片

优点:

是否可抢占式:抢占式

会饥饿

3.7多级队列调度算法

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/606369.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ansible基础6——文件模块、jinja2模板

文章目录 一、常用文件模块1.1 blockinfile模块1.2 file模块1.2.1 创建文件并赋予权限1.2.2 创建目录并赋予权限1.2.3 创建软连接1.2.4 删除文件或目录 1.3 fetch模块1.4 lineinfile模块1.5 stat模块1.6 synchronize模块 二、jinja2模板2.1 构建jinja2模板2.2 管理jinja2模板2.…

LVGL学习(1):中文字体的转换和汉字显示

在使用LVGL的过程中,我们难免需要显示汉字,所以这篇文章就来介绍一下如何转换中文汉字并成功显示到LVGL中。 文章目录 1 字体转换1.1 GUI Guider自动转换1.2 在线转换 2 字体的使用 1 字体转换 1.1 GUI Guider自动转换 打开GUI Guide,创建…

SAP-MM-批次删除归档操作

对于物料主数据的批次管理,一旦一个物料设置了批次管理,并已经产生了业务数据,但是发现当初业务主数据搞错了,此物料不需要在SAP系统进行批次管理,是否就无法取消其批次管理了呢,因为如果要取消此批次管理&…

Java: 字符集详解

1.计算机的存储规则 在计算机中,任意数据都是以二进制的形式来存储的。 每一个二进制数表示的0,1被称为比特位,8个比特位组成一个字节。 字节:计算机最小的存储单元。 2.ASCII字符集 用于存储英文字符,查询制定AS…

阿里云服务器开通全部端口流程

阿里云服务器端口怎么全部打开?在安全组中开启端口号,在安全组中把端口范围设置为-1/-1,授权对象填0.0.0.0/0,即可开通全部端口号,阿腾云来详细说下阿里云服务器端口全部打开教程: 阿里云服务器端口全部开…

结题报告范文

结题报告范文篇一 项目名称:__________ 项目编号: 项目负责人:_________ 专业年级:__________ 所在学院:__________ 起止年月: 电 话:__________ E-mail: 填表时期: 福建…

Vue基础入门(下)

<script src"https://unpkg.com/vuenext"></script> mixin混入&#xff08;局部使用&#xff09; 定义mixin对象 <script>// mixin 混入const mymixin{data(){return {number:2,count:1}},created(){console.log(mymixin created);},methods:{…

【Unity3D】Bloom特效

1 Bloom 特效原理 Bloom 特效是指&#xff1a;将画面中较亮的区域向外扩散&#xff0c;造成一种朦脓的效果。实现 Bloom 特效&#xff0c;一般要经过 3 个阶段处理&#xff1a;亮区域检测、高斯模糊、Bloom 合成。 本文完整资源见→Unity3D Bloom 特效。 1&#xff09;亮区域检…

OS-内存管理1- 4种基本管理方式(连续分配,页式,段式,段页)。

一&#xff0c;内存管理四种方式。 二&#xff0c;连续分配管理方式。 连续分配方式&#xff1a;为用户分配连续的内存空间。 1.单一连续分配方式 2.固定分区分配方式 3.动态分区分配方式 4.三种连续分配方式的对比。 三&#xff0c;基于页式存储管理。 1.页式 为进一步提高…

嵌入式系统中I2C总线通信基本方法

将 I2C spec 文章总结为一篇&#xff0c;目录如下 I2C Introduction I2C Architecture I2C Transfer I2C Synchronization And Arbitration I2C Hs-mode1、I2C Introduction 1、I2C 历史 I2C&#xff1a;Inter-Integrated Circuit&#xff0c;集成电路总线。 I2C 是 Philips…

部分网络结构记录

CVPR 2022 | Mobile-Former来了&#xff01;微软提出&#xff1a;MobileNetTransformer轻量化并行网络 文章链接: CVPR 2022 | Mobile-Former来了&#xff01;微软提出&#xff1a;MobileNetTransformer轻量化并行网络 - 知乎 (zhihu.com) Mobile-Former架构图 Mobile-Form…

Mybatis学习笔记一

目录 一、Mybatis特性二、快速入门1.导入依赖2.mybatis-config.xml配置3.创建mapper接口4.创建MyBatis的映射文件5.通过junit测试功能 三、MyBatis获取参数值的两种方式&#xff08;重点&#xff09;1.单个字面量类型的参数2.多个字面量类型的参数3.map集合类型的参数4.实体类类…

【六一特别文章】Python编写一个六一儿童节问答小游戏及趣味比赛

随着六一儿童节的到来&#xff0c;我们可以为孩子们编写一个有趣的小游戏&#xff0c;让他们在游戏中学习有关六一儿童节的知识。本文将介绍如何用Python编写一个六一儿童节问答小游戏及趣味比赛。 首先&#xff0c;我们需要准备一些有关六一儿童节的问题和答案。这里我准备了…

云原生之docker详解

目录 1.云原生概念 1.1 云原生定义 1.2 云原生元素 1.2.1 微服务 1.2.2 DevOps 1.2.3 持续交付 1.2.4 容器化 2. Docker 2.1 Docker概述 2.1.1 Docker 定义 2.1.2 Docker应用场景 2.1.3 Docker的架构 2.2 Docker命令 2.2.1 docker进程相关命令 2.2.2 docker镜像…

htmlCSS-----CSS选择器(下)

目录 前言&#xff1a; 2.高级选择器 &#xff08;1&#xff09;子代选择器 &#xff08;2&#xff09;伪类选择器 &#xff08;3&#xff09;后代选择器 &#xff08;4&#xff09;兄弟选择器 相邻兄弟选择器 通用兄弟选择器 &#xff08;5&#xff09;并集选择器 &am…

测试进阶必备,这5款http接口自动化测试工具真的很香

现在市场上能做接口自动化测试的工具有很多&#xff0c;一搜一大把&#xff0c;让人眼花缭乱。我们去选择对应实现方式时&#xff0c;不管是框架体系还是成熟稳定的工具&#xff0c;核心目的都是期望引入的技术能在最低投入的情况下达到最优效果。 那么我们选择依据出来了&…

LearnOpenGL-高级OpenGL-9.几何着色器

本人初学者&#xff0c;文中定有代码、术语等错误&#xff0c;欢迎指正 文章目录 几何着色器使用几何着色器造几个房子爆破物体法向量可视化 几何着色器 简介 在顶点和片段着色器之间有一个可选的几何着色器几何着色器的输入是一个图元&#xff08;如点或三角形&#xff09;的一…

【02】STM32·HAL库开发-Cortex-M系列介绍 | Cortex内核分类及特征 | Cortex-M3/M4/M7介绍

目录 1.ARM公司&#xff08;了解&#xff09;2.Cortex内核分类及特征&#xff08;了解&#xff09;3.Cortex-M3/4/7介绍&#xff08;了解&#xff09; 1.ARM公司&#xff08;了解&#xff09; ARM的R是RISC&#xff08;精简指令集计算机&#xff09;的缩写。ARM公司只做内核设计…

数学模型在水环境影响评价、防洪评价与排污口论证项目中的应用

数学模型在水环境评价、防洪评价和排污口论证等领域中的重要作用&#xff0c;随着人类活动的不断增加和环境问题的日益突出&#xff0c;对水资源和水环境的保护与管理变得至关重要。为了更好地理解和应对这些挑战&#xff0c;数学模型成为一种强大的工具&#xff0c;能够提供量…

ubuntu22.04使用kk安装kubernates1.20.4和kubesphere3.1.1

注意 存储空间不够可能安装失败 环境 master 192.168.1.108node1 192.168.1.106node2 192.168.1.102 root ssh登录 sudo passwd root sudo apt install openssh-server # 定位 /PermitRootLogin 添加 PermitRootLogin yes # 注释掉#PermitRootLogin prohibit-password #St…