【问题标题】:Does the scheduler determine which processes can re-enter the CPU after they're blocked?调度程序是否确定哪些进程在被阻塞后可以重新进入 CPU?
【发布时间】:2018-10-12 02:42:49
【问题描述】:

我正在为我的操作系统期中考试而学习,我在学习指南中有一个我不能 100% 确定的问题。

调度程序存在于:
A.服务中断。
B.选择下一个进程进入CPU。
C. 创建一个新进程。
D. 从系统中删除未使用的进程。
E. 确定哪些被阻塞的进程可以进入CPU。
F. B 和 E.

所以我知道B(选择下一个进程进入CPU)是真的。

我不确定的部分是 E 选项。我不确定这实际上意味着什么。

这是否实际上意味着在scanf 之后,用户输入是预期的,并且进程仍然被阻止?

等待该输入是否真的意味着确定?或者调度程序是否积极参与确定是否输入了该输入?

你会如何回答这个问题? B 还是 F?

【问题讨论】:

    标签: operating-system scheduler


    【解决方案1】:

    如果您仔细查看进程状态,您会发现被阻塞的进程永远无法直接进入 CPU。只有当进程进入ready状态后,才能进入CPU执行。

    当进程处于阻塞/等待状态时,它基本上是在等待来自用户的输入等外部事件或在某些 I/O 设备队列中等待某些 I/O 服务。现在,一旦该事件发生,它将进入 ready 状态,并且调度程序(确切地说是短期调度程序)的工作是决定从那些处于就绪状态。所以声明 E 是错误的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-23
      • 1970-01-01
      • 2016-07-06
      • 2017-09-01
      • 2017-10-03
      • 1970-01-01
      相关资源
      最近更新 更多