多级队列调度算法学习卡

📊
多级队列调度算法概念
  • 基本定义: 系统中按进程类型设置多个队列,进程创建成功后插入对应类型的队列
  • 队列特点:
    • 不同队列具有不同优先级
    • 每个队列可采用独立的调度策略
    • 系统进程队列优先级最高,批处理队列优先级最低
🏷️
典型队列分类
  • 最高优先级: 系统进程(如内存管理进程)
  • 中等优先级: 交互式进程(如游戏、打字软件)
  • 最低优先级: 批处理进程(如AI模型训练、视频特效渲染)
  • 设计原因:
    • 系统进程优先级最高是必然需求
    • 交互式进程需要快速响应
    • 批处理进程对实时性要求低
⚖️
队列优先级策略
  • 固定优先级策略:
    • 高优先级队列非空时,低优先级队列不会被调度
    • 缺点:可能导致低优先级进程长期饥饿
  • 时间片划分策略:
    • 示例分配比例:系统进程50%、交互式进程40%、批处理进程10%
    • 优点:保证各类进程都能获得响应时间
    • 实际应用:可设置100ms周期,按比例分配各队列执行时间
🔄
队列内调度策略选择
  • 系统进程队列: 可采用优先级调度(选择最紧急的进程)
  • 交互式队列: 适合时间片轮转(RR),保证快速响应
  • 批处理队列: 可采用先来先服务(FCFS)
  • 灵活性:
    • 实际系统中可设置更多队列级别
    • 各队列调度策略可根据需求自由组合
    • 选择队列后,再在队列内部选择具体进程执行
📌
核心流程与考点
  • 核心流程:
    1. 进程分类入队列
    2. 选择队列(按优先级/时间片)
    3. 队列内部选择具体进程执行
  • 重要考点:
    • 队列优先级设计逻辑(系统进程>交互式>批处理)
    • 交互式进程优先级高于批处理的实际意义
    • 绝对优先级可能导致低优先级进程饥饿
    • 不同队列可采用独立调度策略
    • 多级队列与单一队列调度(如RR)的本质差异