进程运行时,若其访问的页面不在内存而徐将其调入,但内存已无空闲时间时,就需要从内存中调出一页程序或数据,送入磁盘的对换区。
而选择调入页面的算法就称为页面置换算法。好的页面置换算法应有较低的页面更换频率,也就是说,应将以后不会再访问或者较长时间不会再访问的页面先调出。
1.最佳置换算法(OPT)
最佳(Optimal,OPT)置换算法所选择的被淘汰页面将是以后永不适用的,或者是在最长时间内不再被访问的页面,这样可以保证获得最低的缺页率。但是由于人们目前无法预知进程在内存下的若干页面中哪个是未来最长时间不再被访问的,因而该算法无法实现。
最佳置换算法可以用来评价其他算法。假定系统为某进程分配了三个物理块,并考虑有以下页号引用串:
7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1
进程运行时,先将7,0,1三个页面依次装入内存。进程要访问页面2时,产生缺页中断,根据最佳置换算法,选择第18次访问才需调入的页面7予以淘汰。然后访问页面0时,因为已在内存中所以不必产生缺页中断。访问页面3时又会根据最佳置换算法将页面1淘汰……依次类推。
访问页面 | 7 | 0 | 1 | 2 | 0 | 3 | 0 |
---|