| 项目 | 值 |
|---|---|
| 定义 | 每个进程分配优先级,优先级高的先执行 |
| 分类 | 非抢占式 / 抢占式;静态 / 动态 |
| 优先级范围 | 0–127(Linux),值越小优先级越高 |
| 主要问题 | 低优先级进程饥饿 |
| 解决方案 | 老化(Aging)——随等待时间提高优先级 |
优先级调度算法为每个进程分配一个优先级,调度时选择优先级最高的就绪进程执行。
分类:
优先级确定方式:
优先级来源:
| 对比项 | 静态优先级 | 动态优先级 |
|---|---|---|
| 确定时机 | 创建时确定 | 运行中动态调整 |
| 灵活性 | 低 | 高 |
| 实现难度 | 简单 | 复杂 |
| 能否防饥饿 | 不能(需配合老化) | 能(自身随等待提升) |
| 代表 | 批处理系统的作业优先级 | UNIX / Linux 的进程优先级 |
| 考法 | 解题套路 |
|---|---|
| 优先级排序 | 按优先级从高到低选择就绪进程(注意数值小=优先级高) |
| 抢占式判断 | 新进程优先级是否高于当前运行进程 |
| 饥饿问题 | 低优先级进程饥饿,用老化技术解决 |
| 动态优先级调整 | 等待时间增加 → 优先级提高(防饥饿) |
| SJF 与优先级 | SJF 是以执行时间倒数为优先级的特例 |
↑ 以上为站内 HTML 相对链接(纯网页可浏览);本页右上「在 Obsidian 中打开」跳回源笔记。