处理机调度的详细介绍

处理机的调度

标签(空格分隔): 进程调度 调度算法 操作系统

基本概念

定义
: 操作系统管理了系统的有限资源,当有多个进程(或多个进程发出的请求)要使用这些资源时,因为资源的有限性,必须按照一定的原则选择进程(请求)来占用资源, 我们称之为调度。

其目的是控制资源使用者的数量,选取资源使用者许可占用资源或占用资源。处理机调度的三个层次:

高级调度:作业调度, 调度对象为作业.

中级调度:内存调度(实质是存储器的对换功能)

低级调度:进程调度, 调度对象为进程或内核级线程

作业调度的算法也适用于进程调度

服务时间\(T_s\): 系统为作业或进程提供服务的时间
周转时间\(T_i\): 作业或进程被提交给系统到作业或进程完成为止的时间间隔.
通常包括:

作业在外存后备队列上等待调度的时间.
进程在就绪队列上等待进程调度的时间.
进程在cpu上执行的时间.
进程等待I/O操作完成的时间.

平均周转时间:
\[T = \frac{\sum_{i=1}^n T_i}{n}\]
带权周转时间: 作业的周转时间与为它提供服务的时间之比
\[W_i = \frac{T_i}{T_s}\]
平均带权周转时间:
\[W = \frac{\sum_{i=1}^n \frac{T_i}{T_s}}{n}\]

调度时机、切换与过程

进程调度和切换程序是操作系统内核程序。当请求调度的事件发生后,才可能会运行进程调度程序,当调度了新的就绪进程后,才会去进行进程间的切换。理论上这三件事情应该顺序执行,但在实际设计中,在操作系统内核程序运行时,如果某时发生了引起进程调度的因素,并不一定能够马上进行调度与切换。

现代操作系统中,不能进行进程的调度与切换的情况有以下几种情况:

在处理中断的过程中:中断处理过程复杂,在实现上很难做到进程切换,而且中断处理是系统工作的一部分,逻辑上不属于某一进程,不应被剥夺处理机资源。

进程在操作系统内核程序临界区中:进入临界区后,需要独占式地访问共享数据,理论上必须加锁,以防止其他并行程序进入,在解锁前不应切换到其他进程运行,以加快该共享数据的释放。

其他需要完全屏蔽中断的原子操作过程中:如加锁、解锁、中断现场保护、恢复等原子操作。在原子过程中,连中断都要屏蔽,更不应该进行进程调度与切换。

如果在上述过程中发生了引起调度的条件,并不能马上进行调度和切换,应置系统的请求调度标志,直到上述过程结束后才进行相应的调度与切换。

应该进行进程调度与切换的情况有:

当发生引起调度条件,且当前进程无法继续运行下去时,可以马上进行调度与切换。如果操作系统只在这种情况下进行进程调度,就是非剥夺调度。

当中断处理结束或自陷处理结束后,返回被中断进程的用户态程序执行现场前,若置上请求调度标志,即可马上进行进程调度与切换。如果操作系统支持这种情况下的运行调度程序,就实现了剥夺方式的调度。

进程切换往往在调度完成后立刻发生,它要求保存原进程当前切换点的现场信息,恢复被调度进程的现场信息。现场切换时,操作系统内核将原进程的现场信息推入到当前进程的内核堆栈来保存它们,并更新堆栈指针。内核完成从新进程的内核栈中装入新进程的现场信息、更新当前运行进程空间指针、重设PC寄存器等相关工作之后,开始运行新的进程。

调度的方式

非抢占方式
一旦处理机分配给某进程后, 就一直让它运行下去, 决不会因为时钟中断或任何其他原因取抢占当前正在运行进程的处理机, 直至该进程完成, 或发生某事件而被阻塞时, 才把处理机分配给其他进程.

抢占方式
系统允许调度程序根据某种原则, 取暂停某个正在执行的进程, 将已分配个该进程的处理机重新分配给另一进程.
“抢占”时应遵循一定的原则:

优先权原则

短进程优先原则

时间片原则

典型的调度算法

先来先服务调度算法(first-come first-served):

即FCFS调度算法, 既可用于作业调度, 也可用于进程调度. 系统按照作业到达的先后次序(优先考虑在就绪队列中等待时间最长的作业)进行调度.
缺点:未考虑作业的紧迫程度, 只能顺序运行

短作业(进程)优先的调度算法(short job first):

为短作业而设立, 因为操作系统中大多为短作业.系统在作业运行时, 选出运行时间最短的作业将其调入内存.

SJF(不可抢占):算法以作业的长短(作业需要运行的时间)来计算优先级, 作业越短, 其优先级越高.

SPF(可抢占):同上, 但是当有作业优先级较高时, 便可以抢占资源优先执行.

缺点:

必须预知作业的运行时间

对作业程不利

无法实现人机交互

没有考虑到作业的紧迫程度

优先级调度算法(priority-scheduling algorithm):

PSA算法基于作业的紧迫程度, 由外部赋予作业相应的优先级, 根据作业优先级进行调度.

高响应闭优先调度算法(highest request ratio next):

HRRN算法即考虑了作业的等待时间, 又考虑了作业运行时间. 为没有作业引入一个动态优先级:

优先权 = (等待时间+要求服务时间) / 要求服务时间

可缩写为:

R = 响应时间 / 要求服务时间

特点:

作业等待时间相同, 则要求服务时间越短, 优先权越高越, 类似于SJF算法, 有利于短作业

作业要求服务时间相同时, 则作业等待时间约长, 优先权越高, 类似于FCFS算法, 有利于长作业

对于长作业(要求服务时间长), 随着等待的时间足够长, 也可获得较高的优先级. 不会一直等下去.

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

原理: 系统根据FCFS策略将所有的就绪进程排成一个就绪队列, 并设置每隔一段时间产生依次中断, 激活系统中的进程调度程序, 完成依次调度, 将cpu分配给新的队首进程(或新到达的紧迫进程).

进程切换

若一个时间片尚未用完, 正在运行的进程便已完成, 则立即激活调度程序, 将其从执行队列中删除, 在调度就绪队列的队首进程运行, 并启动一个新的时间片.

在一个时间片用完时, 计时中断处理程序被激活, 如果进程尚未运行完毕, 则调度程序将它送往就绪队列末尾, 并调度就绪队列的队首进程运行, 并启动新时间片.

注意:时间片选取过小, 则将频繁的执行进程调度和进程长下文切换, 增加系统开销; 时间片选取过长, 则RR算法退化为FCFS算法, 无法满足短作业和交互式用户需求. 时间片应选取略大于依次典型的交互所需要的时间, 是大多数进程在一个时间片内完成.

多级反馈队列调度算法(multileved feedback queue):

设置多个就绪队列, 并为每个队列赋予不同的优先级, 优先级越高的队列其时间片越小.优先级最高的队列最先进入待调度的队列

队列之间采用FCFS调度算法.只有高优先级队列中的全部进程完成时才调度下一队列

队列内的进程按照轮转算法调度.新进程进入内存后首先进入优先级最高的队列

在低优先级队列运行时, 若有新进程到达, 那么在运行完这个时间片后,CPU马上分配给新到达的作业(抢占式)。

实时系统中的进程调度算法

实时系统是指系统能及时响应外部事件的请求并及时处理这些请求.基于这一特性, 实时系统在工业(武器)控制, 多媒体等系统中常见.
实时系统中通分为存在一个截止时间, 硬实时任务(HRT)要求在开始截止时间前必须执行, 在结束截止时间前必须结束. 软实时任务同上, 但并不严格.
在实时系统中有两类算法值得注意:最早截止时间优先算法(Earliest Deadline First)和最低松弛度优先算法(Least Laxity First).两类算法都可用抢占式和非抢占式调度, 但后者常用于抢占式调度.
在m个周期性的实时调度中, 每个实时任务的处理时间\(C_i\), 周期时间\(P_i\), 在但处理机的情况下, 需满足条件:$\sum_{i=1}^m\frac{C_i}{P_i} \(小于1; 多处理机条件下, 须满足条件\)\sum_{i=1}^m\frac{C_i}{P_i} $小于N, N为处理机数量.

最早截止时间优先算法(EDF)

该算法在实时系统中根据任务的截止时间确定其优先级.

非抢占式

抢占式

最低松弛度优先算法(LLF)

在该法中根据任务的紧急程度(松弛程度)赋予其优先级, 越紧急的任务优先级越高.

任务的松弛程度 = 必须完成时间 – 其本身运行时间 – 当前时间

系统的任务按照松弛度排成一个就绪队列, 松弛度低的任务排在队列前面, 即调度程序优先执行.

以上就是处理机调度的详细介绍的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/185316.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月1日 09:56:20
下一篇 2025年11月1日 09:57:31

相关推荐

  • 币安binance官方APP v3.1.3 币安交易所最新版下载

    币安官方APP已更新至v3.1.3版本,建议用户立即升级以确保账户安全和交易顺畅,此次更新包含性能优化、安全增强和体验改进,提供银行级安全防护、支持数百种数字货币及多种交易模式,界面简洁直观,具备毫秒级实时行情与专业K线工具,用户应通过官网下载或更新,避免使用非官方渠道以防资产风险,安全第一,谨防钓…

    2025年12月8日
    000
  • 虚拟货币投资前,先懂区块链这些要点

    理解区块链是投资虚拟货币前规避风险、洞察机遇的关键,它是一种去中心化、不可篡改、透明且安全的分布式账本技术,构成比特币等虚拟货币的底层基础。1. 区块链通过分布式账本、密码学加密、共识机制和智能合约等核心技术实现数据的安全与可信;2. 投资前应评估项目白皮书、技术实力、团队背景、社区生态、市场定位及…

    2025年12月8日
    000
  • web3.0中底层开发有哪些头部项目?对应的币分别是什么

    Web3.0底层开发头部项目分为四类:1. 基础公链如以太坊(ETH)提供智能合约环境,ETH用于Gas费、质押与治理;2. 跨链协议如波卡(DOT)实现多链互通,DOT用于插槽竞拍与治理;3. 存储网络如Filecoin(FIL)和Arweave(AR),FIL支付存储费用,AR实现永久存储;4.…

    2025年12月8日
    000
  • web3.0中的公链头部有哪些项目?对应的币分别是什么

    2025年,web3.0公链已形成多层级竞争格局:基础层专注智能合约与去中心化计算,跨链层解决区块链互通问题,存储层重构数据所有权。头部项目以技术创新、生态规模及用户活跃度为核心壁垒,其代币不仅是交易媒介,更是治理、质押与生态价值捕获的关键载体。以下将详解六大核心公链及其代币逻辑。 一、基础层公链:…

    好文分享 2025年12月8日
    000
  • 如何下载币安 App(适用于安卓 & iOS)

    安卓用户需通过官网下载APK并开启“未知来源安装”权限,iOS用户需使用非中国大陆Apple ID在App Store下载;注册时可以填写邀请码,可永久享受30%交易手续费返还。 为了在移动设备上便捷地进行交易,您需要安装币安官方App。请根据您的手机操作系统,遵循以下步骤完成下载与注册。 币安官网…

    好文分享 2025年12月8日
    000
  • web3.0跟以太坊是什么关系?举一个浅显易懂的例子

    以太坊是Web3.0的底层技术引擎,通过1.智能合约实现自动化信任,2.去中心化账本保障用户数据主权,3.代币经济驱动价值流转,支撑Web3.0的去中心化生态;截至2025年,其承载76%的Web3.0应用,链上资产超2.3万亿美元,并以Decentraland为例展现NFT确权、DAO治理和去中心…

    2025年12月8日
    000
  • 币an交易所官方网站手机版入口 Binance交易所.官网app.安装入口

    1、Binance币an是全球领先的数字资产交易平台,提供现货、衍生品交易及资产管理等一站式服务;2、其官网提供安全下载入口,用户需通过官方渠道下载App并根据系统类型完成安装与信任设置;3、平台具备银行级安全防护,采用多重身份验证与SAFU基金保障资产安全;4、拥有全球领先流动性,支持高效交易执行…

    2025年12月8日 好文分享
    000
  • 火币app下载地址 火币htx下载链接地址

    获取火币htx应用最安全、最直接的方式是访问其官方网站。网站首页通常会提供适用于不同操作系统的最新版本下载入口。 火币官方app: 火币官网直达: 苹果iOS用户下载方式 App Store商店下载 请打开设备上的App Store,在搜索框中输入 HTX 或 Huobi 进行搜索并下载。请注意,部…

    2025年12月8日
    000
  • 稳定币官方app入口 稳定币官网入口

    为了保障您的数字资产安全,访问和使用稳定币服务时,务必通过其官方指定的入口。非官方渠道可能存在安全风险,例如钓鱼网站或恶意软件。以下是安全访问稳定币官方网站和应用的通用方法和建议。 2025年稳定币主流的交易所: 欧易:   币安:   火币: 如何识别和访问稳定币官方网站 通过权威信息源核实:访问…

    2025年12月8日
    000
  • 币安中文版下载 币安在哪下载中文版

    币安中文版下载指南 为了保障您的资产安全,请务必通过官方渠道下载币安应用程序。不同操作系统的下载方式略有不同,以下为您提供详细的指引。 币安官网直达: 币安官方app: 安卓 (Android) 用户下载指南 安卓用户通常需要直接从币安官方网站获取安装文件。 第一步:访问官方网站 请使用浏览器访问币…

    2025年12月8日
    000
  • okx(欧易)交易所官网下载地址是什么

    为了确保您的账户和资产安全,请务必通过官方渠道访问和下载okx应用程序。非官方渠道的链接或安装包可能包含恶意软件,会导致资产损失。 官方网站地址 OKX的全球官方网站是获取所有官方信息的唯一可靠来源。 官方网址: 官方app: 强烈建议:请手动在浏览器地址栏输入此网址进行访问,不要通过来历不明的短信…

    2025年12月8日
    000
  • binance(币安)交易所官网下载地址是什么

    为何必须通过官网下载 为了保障您的资产安全和个人信息,请务必仅通过币安官方网站获取下载信息。非官方渠道提供的下载链接或安装文件可能被篡改,含有恶意软件,会导致您的账户被盗或资产损失。 币安官方网站地址: 币安官方app: 如何从官网下载App 第一步:访问官网 在您的手机或电脑浏览器中,输入上述官方…

    2025年12月8日
    000
  • 数字货币投资指南:新手如何入门加密货币市场

    新手进入加密货币市场需先掌握基础概念、做好投资准备、选择可靠交易平台、学会交易操作并重视资产安全。1. 加密货币是基于密码学和区块链技术的去中心化数字资产,如比特币(BTC)和以太坊(ETH),其交易记录在不可篡改的分布式账本上。2. 投资前需完成五项准备:学习不同币种的技术与应用、评估自身风险承受…

    2025年12月8日
    000
  • 区块链是什么?比特币、以太坊底层技术,5分钟通俗解读

    区块链是人人可参与、共同记账、公开透明且无法篡改的超级大账本;比特币是基于区块链的数字货币应用,以太坊则是在区块链上支持智能合约和去中心化应用的升级版平台。 想象一下,村里有个公共大账本,村民们每一次交易(比如张三卖给李四一只羊),都由村里的大喇叭广播给所有人。大家听到后,都在自己家的小账本上记下这…

    2025年12月8日
    000
  • 安币Binance交易所客户端下载|安币官方网站|合约与现货交易全功能

    对于希望探索数字资产世界的用户而言,安币(Binance)无疑是一个绕不开的平台。本文旨在提供一份清晰的指南,帮助您安全地访问安币官方网站、顺利下载其功能强大的客户端,并深入了解其核心的现货与合约交易功能,为您在数字资产领域的探索之旅保驾护航。 一、如何安全访问官方网站 1、警惕伪冒网站:访问任何交…

    2025年12月8日 好文分享
    000
  • 币安APP下载_币安APP在哪下载

    为了保障您的数字资产安全,获取币安官方app应始终通过官方和受信任的渠道。以下是针对不同操作系统用户的详细下载指南。 币安官方app: 币安官网直达: 苹果iOS用户下载指南 第一步:访问官方网站 在您的苹果设备上,使用Safari或其他浏览器访问币安的官方网站。这是获取官方下载信息最安全的第一步。…

    2025年12月8日
    000
  • 什么是Omni Network(OMNI币)?是好的投资吗?OMNI币运作原理、代币经济及投资价值分析

    目录 什么是 Omni 协议?Omni网络的历史Omni网络是如何运作的?双质押模型、CometBFT共识双质押模型CometBFT共识应用区块链接口(ABCI++)Omni集成共识Omni网络的特点:Rollup互操作性、Omni EVM和Gas抽象Rollup互操作性Omni EVMGas费抽象…

    2025年12月8日 好文分享
    000
  • 币安交易所下载不了了 币安怎么下载不了了

    近期许多用户反映无法正常下载币安应用程序,这通常不是由单一原因造成的。以下是对此问题可能原因的分析以及一些常规的解决思路。 币安官网直达: 币安官方app: 主要原因:地区政策与网络环境 最常见的原因是您所在地区的网络环境或相关监管政策限制。许多国家和地区对加密货币交易平台的访问进行了限制,这会导致…

    2025年12月8日
    000
  • 欧易官网直达 欧易新版本安全下载

    在数字货币领域,资产安全是头等大事。为了确保您的账户和资金安全,强烈建议所有用户始终通过官方渠道获取欧易应用程序。非官方渠道下载的应用程序可能被植入恶意代码,从而导致您的个人信息泄露和资产被盗风险。 欧易官网直达: 欧易官方app: 如何安全访问欧易官方网站 访问官方网站是获取正版应用的第一步,也是…

    2025年12月8日
    000
  • 币安交易所下载地址在哪 安卓怎么下载币安交易所

    为了确保您的资产安全,强烈建议始终通过官方渠道获取币安(binance)应用程序。以下是适用于安卓设备的下载方法说明。 币安官网直达: 币安官方app: 通过官方网站下载 最安全、最可靠的下载方式是直接访问币安的官方网站。 操作步骤: 请使用浏览器,通过搜索引擎查找并进入币安(Binance)的官方…

    2025年12月8日
    000

发表回复

登录后才能评论
关注微信