面试问题之操作系统:进程调度算法

进程调度算法

1、先来先服务调度算法FCFS

先到的进程先调度,执行过程不会被中断直到进程结束。

优点:易于实现,且相当公平。

缺点:比较有利于长进程,而不利于短进程。

2、短作业优先调度算法SJF

优先分配给短进程执行。

优点:平均周转时间最短,进程等待时间缩短,可以增大系统吞吐量。

缺点:难以准确预估进程执行时间,开销较大;不利于长进程,有可能“饥饿”现象。

3、高响应比调度算法HRRN

一种关于先来先服务和短作业优先的折中算法,当一个长进程等待时间过长,就会获得较高的优先权,因此不会出现“饥饿”现象。

优先级D=(执行时间+等待时间)/执行时间

优点:不会出现“饥饿”现象,长作业也有机会被调度。

缺点:每次都需要计算优先级,系统开销大。

4、时间片轮转调度算法RR

为进程设定时间片,即每个进程运行的时间,在一个时间片结束时,发生时钟中断,调度程序暂停执行并加入队尾,通过上下文切换执行当前队首进程

优点:算法简单,响应时间短。

缺点:不利于处理紧急作业;时间片过小会导致频繁进程上下文切换,增大系统开销;时间片过长则会退化为FCFS。

 

posted @ 2019-09-02 19:54  知了会爬树  阅读(1019)  评论(0编辑  收藏  举报