楼主:
q1qip123 (wtlee)
2017-11-09 18:04:10想请问
在premptive的法则下,为什么不保证starvation一定发生?
ex. 若是我一直提供较高优先权的process不会发生吗?
还是我对starvation的理解有误?
(starvation: 因process长期无法取得资源,而无法完成工作的现象)
作者: awilliea (willie) 2017-11-09 18:26:00
可能有其他机制辅助解决starvation,像是MFQs的辅助机制
楼主:
q1qip123 (wtlee)
2017-11-09 18:37:00因为网络上查说RR是没有starvation , 所以说他不是没有,只是因为能解决?
RR是因为Time Out之后会进Ready Queue,此时Process是FIFO的,所以不会有Stravation*StarvationMFQs是因为允许Process在不同Queue之间移动,所以可以采取类似Aging技术的作法来消除Stravation手残又拼错== Starvation 抱歉小结:FIFO、RR、MFQs这三种没有Starvation
楼主:
q1qip123 (wtlee)
2017-11-09 19:18:00那RR的ready queue是FIFO,那为什么他是preemptive?
因为正在执行的process会因为time out 被迫放掉cpupreemptive的定义应该就是正在执行的会非自愿放掉cpustarvation就是看有没有机会有人永远执行不到
楼主:
q1qip123 (wtlee)
2017-11-09 19:38:00好 我暸解了 谢谢各位!!