我正在尝试生成一个测试用例,用于演示xinu的默认调度策略的饥饿:如果两个进程准备好执行,优先级较高的进程将继续运行,并且进程的优先级是否与循环算法相同。
粗略的想法是创建2个具有不同优先级的进程。此创建将使这两个进程都处于挂起状态。在此之后,我们为进程1调用resume sys调用,将其放入readylist调度队列,然后调用执行它的reschedule sys调用。
我知道这是有可能发生的,但我很难想出解决这个问题的办法。
任何帮助都将不胜感激。谢谢
发布于 2018-03-19 09:34:45
您可以尝试让第一个进程运行无限循环。只要它的优先级高于第二个进程,第二个进程就不会获得任何处理时间。
https://stackoverflow.com/questions/46388420
复制相似问题