文章目录
- 前言
- CPU调度策略
前言
一个本硕双非的小菜鸡,备战24年秋招,计划学习操作系统并完成6.0S81,加油!
本文总结自B站【哈工大】操作系统 李治军(全32讲)
老师课程讲的非常好,感谢
【哈工大】操作系统 李治军(全32讲)
CPU调度策略
cpu调度: 指的是 cpu从就绪队列中选择一个进程来执行;选择哪一个进程是调度算法的执行结果;
调度就是获得next,一旦获得就要切换
IO密集型任务: 程序需要执行计算与IO工作;(很像前台任务)
CPU密集型任务:仅执行计算工作;
如果分析的话IO优先级更高,因为执行一小段就换成CPU了
谁先来谁服务FCFS
先来先服务的调度算法比较基础
设置优先级
优先级调度细节:
- 前台任务队列(队列1)采用短作业优先策略,优先级高;
- 后台任务采用轮转调度,优先级低;
优先级调度算法的问题
- 如果前台任务一直存在的话,后台任务可能一直都没有机会被cpu执行,后台任务饥饿;
- 如果后台任务优先级被动态升高,则会影响前台任务的执行,前台任务响应时间又会增加;
- 此外,操作系统如何知道 哪些是前台任务(io密集型任务),哪些是后台任务(计算密集型任务)?
解决方法
- 以轮转调度为核心,短作业优先级高于长作业,巧妙设置优先级;