首页 > 解决方案 > 性能 - 具有 4 组优先级队列的多进程 RR 调度

问题描述

所以,伙计们,我遇到了这个问题,并希望有一个最佳的 RR 解决方案,这是我拥有的资源:

  1. 数据包进入四组队列,每组包含从 pq0 到 pq7 排列的 8 个优先级队列。跨集的相同优先级权重相同。IE。集合 1 中的 pq0 和集合 2 中的 pq0 具有同等优先级。

  2. 我有 4 名工人同时轮询这些队列。一个队列在一个工作人员访问它时被锁定,如果另一个工作人员碰巧与它发生冲突,该工作人员只会尝试其 RR 列表中的下一个队列。

我目前的设计是根据优先级将队列分成8组,即。4 x pq0, 4 x pq1 ... 4 x pq7。让四个工人先通过 pq0s,然后是 pq1s,最后是 pq7s。问题:如果我们认为较高优先级的饥饿,较低的优先级是正常的。如果较高的优先级通常为空,那将是一个巨大的成本(这是一个假设,较低优先级的队列也可能是空的,因为我无法知道模式。)

有什么建议,算法吗?

标签: algorithmschedulingpriority-queueround-robin

解决方案


推荐阅读