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

【从零开始学习计算机科学】操作系统(五)处理器调度

【从零开始学习计算机科学】操作系统(五)处理器调度

    • 处理器调度
      • 一些简单的短程调度算法的思路
        • 先来先服务(First-Come-First-Served,FCFS)
        • 优先级调度及其变种
        • 最短作业优先调度算法(SJF)--非抢占式
        • 最短作业优先调度算法(SJF)--抢占式
        • 最高响应比优先调度算法
        • 轮转调度算法(RR)
        • 多级反馈轮转调度算法
        • 实时系统的调度算法
        • 多处理器模型的调度

处理器调度

处理器调度是为了更好的利用处理器,为了评估处理器利用情况和调度功能的性能,我们需要定义一些性能指标。

  • CPU 使用率:应使CPU尽可能地忙碌。好的调度策略应该尽可能地提高CPU的利用率。
  • 吞吐量:是在一个时间单元内进程完成的数量。对于长进程,吞吐量可能为每小时一个进程;对于短进程,吞吐量可能为每秒十个进程。
  • 周转时间:从进程提交到进程完成的时间段称为周转时间。周转时间为所有时间段之和,包括等待进入内存、在就绪队列中等待、在 CPU 上执行和 I/O 执行。
  • 等待时间:等待时间为在就绪队列中所有进程等待所花的时间之和。
  • 响应时间:对于交互系统,周转时间不是最佳准则,响应时间更为合理。响应时间是指从用户提交一个请求开始,直到系统首次产生响应为止的这段时间。

一个进程从创建到执行可能需要经过以下三级调度:长程调度、中程调度和短程调度。

  • 长程调度用于从新建态到就挂起/就绪态、从新建态到就绪态的调度;
  • 中程调度用于从挂起/阻塞态到阻塞态、从挂起/就绪态到就绪态的调度;
  • 短程调度用于从就绪态到执行态的调度。

短程调度程序也叫进程调度,将决定哪一个就绪进程将获得处理器。进程调度可能发生在3个时机:

  1. 一个处于运行态的进程结束时,从就绪进程队列中选择一个就绪进程运行。
  2. 当一个正在运行的进程阻塞时

相关文章:

  • JAVASE(五)
  • 垃圾收集算法与收集器
  • vue2:表单的动态校验和静态校验
  • 前端开发中的常见设计模式:全面解析与实践
  • Linux Shell 脚本编程极简入门指南
  • 服务器数据恢复—预防服务器故障,搞定服务器故障数据恢复
  • BT-Basic函数之首字母D
  • git commit messege 模板设置 (规范化管理git)
  • Python学习第十二天
  • 大模型在甲状腺癌诊疗全流程预测及方案制定中的应用研究
  • 台风信息查询API:数据赋能,守护安全
  • css中的浮动
  • 【QT5 Widgets示例】记事本:(三)功能实现
  • 2012. 数组美丽值求和【动态规划】
  • 学习threejs,使用LatheGeometry旋转体(榫卯体)几何体
  • texstudio: 编辑器显示行号+给PDF增加行号
  • 大数据实时分析:ClickHouse、Doris、TiDB 对比分析
  • 力扣-数组-34 在排序数组中查找元素的第一个和最后一个位置
  • 代码随想录|二叉树|07二叉树周末总结
  • 使用 Miniforge3 管理 Python 环境的详细指南(基于最新实践和时效性信息,截至 2025 年)
  • 印巴局势快速升级,外交部:呼吁印巴以和平稳定的大局为重
  • 中邮保险斥资8.69亿元举牌东航物流,持股比例达5%
  • 抗战回望20︱《山西省战区抗敌行政工作检讨会议议决案》:“强民政治”、“说服行政”
  • 十四届全国政协原常委、民族和宗教委员会原副主任苟仲文被提起公诉
  • 阿曼宣布美国与胡塞武装达成停火协议
  • 践行自由贸易主义理念,加快区域合作进程