转自http://yinzhezq.blog.163.com/blog/static/1648628902010112961039187/
考虑下述页面走向:
1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
当内存块数量分别为3时,试问FIFO、LRU、OPT这三种置换算法的缺页次数各是多少?
答:缺页定义为所有内存块最初都是空的,所以第一次用到的页面都产生一次缺页。
当内存块数量为3时:
发生缺页中断的次数为16。
在FIFO算法中,先进入内存的页面被先换出。当页6要调入时,内存的状态为4、1、5,考查页6之前调入的页面,分别为5、1、2、4,可见4为最先进入内存的,本次应换出,然后把页6调入内存。
发生缺页中断的次数为15。
在LRU算法中,最近最少使用的页面被先换出。当页6要调入时,内存的状态为5、2、1,考查页6之前调入的页面,分别为5、1、2,可见2为最近一段时间内使用最少的,本次应换出,然后把页6调入内存。
发生缺页中断的次数为11。
在OPT算法中,在最远的将来才被访问的页面被先换出。当页6要调入时,内存的状态为1、2、5,考查页6后面要调入的页面,分别为2、1、2、…,可见5为最近一段时间内使用最少的,本次应换出,然后把页6调入内存。
今天复习操作系统的时候,自己在本子上,画了画lru的求法,求出来的,但是有点不自信,由于书上没得例题,今天问了一下我们操作系统老师关于lru的解法,结果他说和opt差不多,我问区别在哪里,他讲的很乱, 我没弄明白,最后到百度上查了下,发现我的想法是对的,他没回答好;哎。。。