当前位置: 首页 > news >正文

计算机操作系统(十一)调度器/调度程序,闲逛调度与调度算法的评价指标

计算机操作系统(十一)调度器/调度程序,闲逛调度与调度算法的评价指标

  • 前言
  • 一、调度程序
    • (一)什么是调度程序?
    • (二)哪些情况会触发调度程序工作?
    • (三)两种调度策略的区别
  • 二、闲逛调度:
  • 三、调度算法的评价指标:
    • (一)CPU利用率:
    • (二)系统吞吐量:
    • (三)周转时间:
    • (四)等待时间:
    • (五)响应时间:


前言

  • 在上一篇博客中,我们探讨了调度的概念与层次体系,以及进程调度的触发时机和进程调度方式。
  • 本篇博客将进一步深入剖析调度器(又称调度程序)、闲逛调度机制,同时解析调度算法的核心评价指标

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的操作系统博客专栏
https://blog.csdn.net/2402_83322742/category_12916780.html?spm=1001.2014.3001.5482


一、调度程序

在这里插入图片描述

(一)什么是调度程序?

就像班主任给学生安排考试顺序一样,调度程序是操作系统里专门负责分配CPU资源的"管家",它的核心工作是决定接下来让哪个进程使用CPU。
在这里插入图片描述

(二)哪些情况会触发调度程序工作?

  1. 创建新进程
  • 比如你打开一个新的游戏软件,系统就会创建一个新进程。
  • 这时候调度程序需要考虑:是马上让新进程运行,还是让它排队等待?
  1. 进程退出
    当一个进程完成任务退出时,比如你关闭了正在看的视频软件,调度程序就会重新分配CPU资源,让其他等待的进程有机会运行。

  2. 运行进程阻塞

  • 当一个进程需要等待输入输出(比如等待用户键盘输入、读取文件数据),这时候进程会暂时"停住",调度程序就会让其他进程先运行。
  1. I/O中断发生
  • 比如打印机完成打印任务后向系统发送信号,这种突发的I/O事件会打断当前进程,触发调度程序重新选择下一个运行的进程

(三)两种调度策略的区别

  • 非抢占式调度(温柔的管家)
    只有当前进程主动"放手"(阻塞或退出)时,调度程序才会安排新进程。就像餐厅厨师必须做完当前顾客的菜,才会处理下一个订单,不会中途打断正在做的菜。

  • 抢占式调度(严格的管家)
    会定时打断当前进程(比如每10个时钟周期),强制切换任务。类似老师规定每个学生每10分钟必须交换一次做的题目,确保每个人都有机会练习,防止某个学生一直占用时间。

二、闲逛调度:

  • 当所有进程都在等待(比如都在阻塞状态),没有可运行的任务时,调度程序会启动一个特殊的"闲逛进程"

比如:

  • 电脑待机时,屏幕保护程序开始运行,此时CPU并没有完全空闲,而是在执行这个轻量级的闲逛进程。
  • 它的作用是让CPU保持运行状态,随时准备响应新的任务,就像商店里没有顾客时,店员会整理货架保持待命,而不是关门休息。

三、调度算法的评价指标:

在这里插入图片描述

(一)CPU利用率:

  • 定义:CPU真正在处理任务的时间占总时间的比例。
  • 例子:如果一天24小时里,CPU有20小时在处理程序,4小时在空闲,利用率就是20/24≈83.3%。
  • 目标:越高越好,但不能过度压榨(比如避免所有进程排队等待导致死机)。

(二)系统吞吐量:

  • 定义:单位时间内完成的进程数量。
  • 例子:餐厅一小时内完成100份套餐和完成50份套餐,前者吞吐量更高。调度算法好的系统,就像高效的餐厅,能更快处理更多任务。

(三)周转时间:

  • 定义:从进程创建到完成的总时间。
    • 不带权周转时间:直接计算总耗时,比如外卖从下单(进程创建)到送达(完成)用了30分钟。
    • 带权周转时间:总耗时除以进程实际运行时间(考虑等待时间的影响)。比如外卖制作花了10分钟,等待配送花了20分钟,带权周转时间就是30/10=3(表示等待时间是运行时间的2倍)。
  • 目标:平均周转时间越小越好,让每个任务尽快完成。

(四)等待时间:

  • 定义:进程在就绪队列中等待被CPU处理的总时间(不包括运行时间)。
  • 例子:外卖在厨房排队等待厨师制作的时间,就是等待时间。调度算法差的系统,可能让外卖长时间排队,导致等待时间过长。

(五)响应时间:

  • 定义:从用户提交请求到系统首次响应的时间。
  • 例子:你点击鼠标打开网页,到浏览器开始显示第一个页面的时间,就是响应时间。即使最终完成需要较长时间,快速的首次响应也能让用户感觉系统更流畅。

以上就是对本次关于操作系统博客内容的总结,后续我们将深入探讨操作系统更多知识。

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的操作系统博客专栏
https://blog.csdn.net/2402_83322742/category_12916780.html?spm=1001.2014.3001.5482

非常感谢您的阅读,喜欢的话记得三连哦

在这里插入图片描述

相关文章:

  • 如何排查服务器 CPU 温度过高的问题并解决?
  • PYTHON训练营DAY29(补)
  • uniapp实现大视频文件上传-- 阿里云oss直传方式 - app、H5、微信小程序
  • SQL语句面试题
  • 整平机:工业制造中的关键设备
  • Chrome 插件网络请求的全面指南
  • Chrome 缓存文件路径
  • 基于B/S架构的质量监督检验报告自动生成管理系统有何亮点?
  • 系统性能分析基本概念(2):性能模型
  • 每日Prompt:像素风格插画
  • 一、web安全基础入门
  • MLpack 开源库介绍与使用指南
  • 实现了TCP的单向通信
  • 征程 6 J6E/M linear 双int16量化支持替代方案
  • 野火鲁班猫(arrch64架构debian)从零实现用MobileFaceNet算法进行实时人脸识别(四)安装RKNN Toolkit2
  • Java—— IO流 第三期
  • 基于 AMDXCVU47P HBM2 FPGA 的 2 路 100G 光纤 PCIe 高性能计算加速卡
  • redis Pub/Sub 简介 -16 (PUBLISH、SUBSCRIBE、PSUBSCRIBE)
  • Linux 强制访问控制深度解析:机制、比较与战略部署
  • 【VLNs篇】05:TGS-在无地图室外环境中使用视觉语言模型进行轨迹生成和选择
  • 一般找素材都是做哪几个网站呢/提升排名
  • 安徽两学一做网站/网络营销的背景和意义
  • php网站开发技术训练心得/百度营销登录入口
  • 做公司官网怎么做/企业官网seo
  • 网上购物的网站有哪些/推广软文200字
  • 工程公司名称大全集最新免费/大连做优化网站哪家好