📌  相关文章
📜  教资会网络 | UGC NET CS 2014 年 12 月 – III |问题 17(1)

📅  最后修改于: 2023-12-03 15:26:02.732000             🧑  作者: Mango

教资会网络 | UGC NET CS 2014 年 12 月 – III | 问题 17

本题是关于操作系统的问题,涉及到进程调度算法。

问题描述

操作系统中,通常实现进程调度的方法有很多种,其中 FCFS、SJF 和 RR 是三个比较常用的算法。请问,在以下哪一个算法中,进程等待时间可能最长?

A. FCFS B. SJF C. RR D. 以上都不是

答案解析

本题需要了解三种常见的进程调度算法 FCFS、SJF 和 RR。

FCFS 算法是“先来先服务”的意思,即按照进程到达时间的先后顺序,依次执行各个进程。这种算法有个问题就是没有考虑进程的执行时间,如果某个进程的执行时间很长,那么会导致其他进程等待时间变长。

SJF 算法是“短作业优先”的意思,即按照进程执行时间的短长顺序,依次执行各个进程。这种算法可以使平均等待时间最小,但是可能会导致长时间运行的进程一直得不到执行。

RR 算法是“时间片轮转”的意思,即每个进程被分配一个时间片,当时间片用完后,如果进程没有执行完,则暂停它,执行下一个进程,等到下一轮时间片再继续执行之前暂停的进程。这种算法可以使进程响应时间加快,但是如果时间片过短,会导致进程切换频繁,影响系统的效率。

综合上述三种算法,在 FCFS 算法中,如果有一个长时间运行的进程,会导致其他进程等待时间变长,所以答案为 A。