是什么打破了最佳页面替换的平局?

What breaks a tie in Optimal Page Replacement?

假设我们有 3 个帧用于一个值为 (1,7,0) 的进程。现在假设该进程的字符串引用中的其余引用是:4、6、7。对于引用 4,将发生页面错误并且将来只有 7,那么这里应该替换哪一帧,1 还是 0?我是应用 FIFO 来打破这种平局,还是我可以 select 中的任何一个来替换?

最佳意味着您拥有所有未来的信息,因此如果两个页面真的再也不会被使用,您可以选择任何一个都没有问题。然而,如果你想做一个 LRU 或 FIFO 来打破平局,那会很好(即无关紧要)。

有趣的是考虑在全球范围内应用优化,而不仅仅是单个过程。如果我们假设其他进程稍后可能会触及 1 或 0,那么这可能是用于做出最佳选择的未来信息的一部分。如果多个 CPU 也同时接触内存,最佳 decision-making 也会变得更加复杂。