处理器调度课程知识点总结
进程切换的基本概念:
pcb保存该进程的执行上下文;
恢复下一个进程的执行上下文;
处理机调度:
在就绪队列中选择一个队列进行调度;
在cpu资源中选择可用的cpu资源供就绪队列使用.
针对cpu资源和就绪队列.
调度算法的衡量参数:
- cpu使用率:cpu处于忙状态的时间百分比;
- 吞吐量:单位时间内完成的进程数量;
- 等待时间:进程在就绪队列中的总时间;
- 响应时间:从提交请求到产生响应的时间;
- 周转时间:进程初始化到结束的时间,包括等待时间;
调度时机和调度策略:
调度时机可以是时间片使用完,资源被占用,被高优先级进程抢占.抢占有可抢占和不可占用抢占.
调度策略(6个调度策略):
先来先服务:
缺点:平均等待时间波动较大;io资源型和cpu资源型利用率不均匀;
优点:实现简单
短进程优先算法:
选择就绪队列中执行时间最短的进程执行;
优点:可以使进程调度获得最短的时间;
缺点:会导致饥饿现象;需要预知未来;
最高响应比优先算法:
响应时间:等待时间+执行时间;
不可抢占;
关注进程的等待时间;
防止无限期推迟;
时间片轮转算法:
额外的上下文切换开销;要选择合适的时间片;
多级反馈队列算法:
不同队列之间优先级可以移动,就是说若该进程优先级上升,则进入高优先级的队列;
多级队列调度算法:固定优先级,分前后台来处理;
公平共享调度算法:
设置不同优先级的组;
进程切换的一般过程分析:
发生中断;
通过cs,exp,eip,eflags寄存器保存上下文信息;
保存现场;
中断处理前调用schedule()函数来进行进程的切换;
恢复现场;
使用itet命令来弹出cs,esp,eip寄存器中的信息;
运行新的进程;
这中间进程切换外面包了一层中断上下文的切换;
(进程切换,上下文切换,任务切换):
- 上下文切换:
实时操作系统:
正确性依赖时间和功能;
强实时操作系统:必须在指定的时间间隔之内完成;
弱实时操作系统:
实时调度:速率单调调度算法:通过周期来安排优先级,周期越短优先级越高;
最早截止时间优先算法:截止时间越早优先级越高;
多处理器调度:
处理机之间可以负载共享;
对称多处理器调用:静态进程分配,每一个处理器都事先分好了进程队列,这样会造成有的处理器空闲,有的处理器繁忙.动态进程分配:在处理的过程中可以动态安排进程队列,使处理器处理均衡,这样会增加开销.
优先级反置:缘起低优先级会一直得不到执行,优先级反置使高优先级的进程等待低优先级的进程;

浙公网安备 33010602011771号