一、CPU调度要解决的三个问题
what:按什么原则选择下一个要执行的进程 -- 调度算法
when:何时进行选择 -- 调度时机
how: 如何让被选中的进程上CPU运行 -- 调度过程 (进程上下文切换)
二、CPU调度的时机
1、进程正常终止 或 由于某种错误而终止
2、新进程创建 或 一个等待进程变成就绪
3、当一个进程从运行态进入阻塞态
4、当一个进程从运行态变为就绪态
/// 内核对中断/异常/系统调用处理后返回到用户态时
三、算法考虑的要素
1、性能
1)用户角度: 周转时间、响应时间、最后期限
2)系统角度:吞吐量、CPU利用率
2、其他
1)用户角度:可预测性
2)系统角度:公平性、强制优先级、平衡资源
四、调度算法衡量指标
吞吐量 throughput 每单位时间完成的进程数目
周转时间 TT(Turnaround Time) 每个进程从提出请求到运行完成的时间
响应时间 RT(Response Time) 从提出请求到第一次回应的时间
CPU利用率 utilization cpu做有效工作的时间比例
等待时间 WT(Waiting Time) 每个进程在就绪队列中等待的时间
五、批处理系统中采用的调度算法
1、几种算法
先来先服务(FCFS- first come first serve)
最短作业优先 (SJF - shortest job first)
最短剩余时间优先 (SRTN - shortest remaining time next)
最高响应比优先 (HRRN - highest resp

本文详细介绍了CPU调度的目的、时机、算法要素以及各种调度算法,包括批处理系统中的FCFS、SJF、SRTN和HRRN,交互式系统中的RR、HPF和多级反馈队列调度,同时探讨了Windows系统的线程调度策略。
8437

被折叠的 条评论
为什么被折叠?



