操作系统常用调度算法:FCFS、SJF、HRN

该思维导图总结了三种常见的进程调度算法:先来先服务(FCFS)、短作业优先(SJF)和最高响应比优先(HRN)。FCFS算法简单易懂,按作业到达顺序执行;SJF算法选择运行时间最短的作业,以减少平均周转时间;HRN算法则综合考虑等待时间和执行时间,通过响应比来选择作业,兼顾公平性和效率,避免长作业长期等待。 三种算法各有优劣,适用场景不同。

源码
# 操作系统常用调度算法
## 一、先来先服务算法(FCFS)
- 定义
  - 最简单的调度算法
  - 按照作业进入输入井的先后次序调度
- 特点
  - 非抢占式
  - 当前作业占用CPU直到执行完或阻塞
- 优缺点
  - 优点
    - 实现简单,容易理解
  - 缺点
    - 可能导致“饥饿”现象
    - 平均周转时间较长

## 二、短作业优先算法(SJF)
- 定义
  - 根据作业所需的运行时间选择运行时间较短的作业
- 特点
  - 抢占式或非抢占式均可实现
  - 优先级根据运行时间进行动态变化
- 优缺点
  - 优点
    - 最小化平均周转时间
  - 缺点
    - 可能导致长作业“饥饿”
    - 需要准确预测作业的运行时间

## 三、最高响应比优先算法(HRN)
- 定义
  - 综合考虑进程的等待时间和执行时间
- 响应比计算
  - 响应比R = (等待时间 + 要求执行时间) / 要求执行时间
- 特点
  - 动态优先级调整
  - 提供公平性和效率的平衡
- 优缺点
  - 优点
    - 避免长进程长期等待
  - 缺点
    - 计算复杂度较高
    - 需要维护更多的状态信息
图片
操作系统常用调度算法:FCFS、SJF、HRN