【问题标题】:Average waiting time in case of priority scheduling优先调度情况下的平均等待时间
【发布时间】:2014-09-07 04:34:55
【问题描述】:

我们知道优先级调度可以是抢占式或非抢占式的。一般来说,这两者中哪一个的平均等待时间最短?它们的性能会根据测试用例而改变吗??

【问题讨论】:

  • 在我看来,桌面和移动操作系统中的整个调度事情是这样安排的,以便最终用户主观感知的等待时间最小。正如@shekhar-suman 所建议的那样,虽然非抢占式调度可以在最短的时间内将大部分 CPU 执行量分配给 1 个进程,但最终用户的等待时间体验可能完全不同。你想通过你的答案找出什么(你的后续行动)?
  • 等待什么?任何需要 I/O 性能而不是“非常糟糕”的进程都将在预先调度程序上运行得更好。

标签: operating-system scheduling


【解决方案1】:

一般来说,非抢占式优先级调度的平均等待时间最短,因为在其时间限制内执行时,没有其他优先级较高的进程会干扰其他优先级较低的进程的执行!

说,进程 B 在它自己的时间范围内运行,因此没有其他进程会在其间进行干扰,因此进程将在预定时间完成!如果是抢占式优先级调度,该进程可能总是被一些常规的高优先级进程扫除,因此它没有得到适当的执行时间,从而导致等待轮到自己!

接下来,这只是一般性,因此,性能不受特定公式的控制,因此性能将取决于测试用例。但是,优先级调度的概念如果是非抢占式的会更好,否则,扫除其他进程可能会导致等待时间长且效率低下!

但是,我想让您知道,在实际实施中没有使用这种纯粹的概念,甚至实施了完整的混合概念 抢占式优先级调度,如及时检查每个进程的最后执行时间等。所以降低 优先进程不会被一扫而光!

【讨论】:

  • 谢谢shekhar,很好的解释
猜你喜欢
  • 2015-03-06
  • 2023-04-05
  • 1970-01-01
  • 1970-01-01
  • 2015-07-09
  • 2020-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多