操作系统学习笔记(二)- 单核CPU的调度算法
1、FIFS(先来先服务算法)
每次从就绪队列选择队列头部的进程,把CPU时间片分给这个进程,直到进程运行完或被阻塞,才会从队列中取出下一个进程分配CPU时间片;
缺点:如果一个长作业先运行了,短作业等待是时间就会巨长!不适用频繁进行i/O的系统
2、SJF(最短作业优先算法)
优先选择运行时间最短的进程来运行,有利于提高系统的吞吐量。
缺点:对长作业不利,如果队列里面有很多短作业,长作业就会一直得不到CPU时间片而无法运行,可能会饿死。
3、HRRN(高响应比优先调度算法)
每次进行进程调度的时候,先计算响应比优先级,响应比优先级最高的进程被分配CPU时间片

4、RR(时间片轮转调度算法)
队列里面的进程会按照在队列里面的顺序,按顺序分配CPU时间片,如果到时间还没有执行完,这个进程就会就放到队尾,等待下一次被分配CPU时间片。然后把CPU时间片分给下一个进程;如果CPU时间片还没有用完,当前进程就执行完或者进入了阻塞状态,直接进行切换,给下一个进程分配CPU时间片。
重点:CPU时间片的长度要适中
5、(HPF)最高优先级调度算法
就绪队列里面的进程都有优先级,每次都从队列里面选择优先级最高的进程运行
缺点:优先级低的进程会饿死,永远不会被运行。
6、MFQ(多级反馈队列调度算法)
是时间片轮转算法和最高优先级算法的综合,
多级:有多个队列,每个队列优先级从高到低,优先级越高时间片越短;
反馈:如果有新的进程加入优先级高的队列时,会停止当前正在运行的线程(抢占式),去运行优先级高的队列。
1万+

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



