CPU调度算法 读操作系统概念第六版
来源:互联网 发布:2016年淘宝双十一活动 编辑:程序博客网 时间:2024/05/13 07:52
先到先服务调度,FCFS调度算法(非抢占式)
当一个进程进入到就绪队列,其PCB被链接到队列的尾部。当CPU空闲时,CPU被分配给位于队列头的进程。接着,该运行进程从队列中被删除。FCFS调度的代码编写简单且容易理解。
最短作业优先调度算法,SJF调度算法(抢占式或非抢占式)
当CPU为可用时,它会赋给具有最短后续CPU区间的进程。如果两个进程具有同样长度的CPU区间,那么可以使用FCFS调度来处理。
SJF算法可能是抢占的或非抢占的。当一个新进程到达就绪队列而以前进程正在执行时,就需要选择。新进程,与当前运行进程所产生的CPU区间相比,可能有一个更短的下一个CPU区间。可抢占SJF算法可能会抢占当前运行进程,而非抢占SJF算法会允许当前运行进程完成其CPU区间。可抢占SJF调度有时称为最短剩余时间优先调度。
优先权调度算法
每个进程都由一个优先权与其关联,具有最高优先权的进程会被分配到CPU。具有相同优先权的进程按FCFS顺序调度。
轮转法(round-robin,RR)调度算法
轮转法调度算法是专门为分时系统而设计的。它类似于FCFS调度,但是增加了抢占以在进程间切换。定义一个较小时间单元,称为时间量或时间片。时间片通常为10ms到100ms。就绪队列作为循环队列处理。CPU调度程序循环就绪队列,为每个进程分配不超过一个时间片间隔的CPU。
为了实现RR调度,将就绪队列实现为进程的FIFO队列。新进程增加到就绪队列的尾部。CPU调度程序从就绪队列中选择第一个进程,设置定时器在一个时间片之后中断,最后分派该进程。接着,有两种情况可能发生。进程可能只需要小于一个时间片的CPU区间。对于这种情况,进程本身会自动释放CPU。调度程序接着会处理就绪队列的下一个进程。另一种情况是,当前运行进程的CPU区间比一个时间片要长,定时器会中断并产生操作系统中断。进行上下文切换,该进程会被加入到就绪队列的尾部。接着,CPU调度程序会选择就绪队列中的下一个进程。
多级队列调度
- CPU调度算法 读操作系统概念第六版
- 进程调度1 读操作系统概念第六版
- 进程调度2 读操作系统概念第六版
- 请求页面调度 读操作系统概念第六版
- 《操作系统第六章CPU调度》原作:Tulipsys
- 操作系统是什么?+读操作系统概念第六版
- 进程概念 读操作系统概念第六版
- 线程概念 读操作系统概念第六版
- 操作系统中cpu调度算法
- CPU概念和调度算法
- CPU概念和调度算法
- 操作系统-进程调度(CPU调度算法)
- 操作系统概念学习笔记 10 CPU调度
- 操作系统概念(第五章) CPU调度
- CUP调度(操作系统概念(第六版)第六章)笔记
- 进程同步 读操作系统概念第六版
- 硬件同步 读操作系统概念第六版
- 信号量 读操作系统概念第六版
- NT内核和驱动开发的基础知识-笔记
- 使用Boost property tree来解析带attribute的xml
- Android 动画专题--- Frame Animation
- 各式各样的正则表达式参考大全,验证邮箱
- 第一章 使用VC++ 2005 编程
- CPU调度算法 读操作系统概念第六版
- Oracle UNDO表空间日常维护查看操作
- 动画效果编程基础:
- XNA那些事(七)-详解WINDOWS PHONE 3D游戏中运动的摄像机与精灵(上)
- 批量绑定(bulk binds):FOR循环与FORALL的性能比较
- 开始的数学
- 全局变量、extern/static/const区别与联系
- 【小程序】递归实现控制台输出的文件树形结构
- c++中qsort函数简介