在一个请求分页系统中,采用最近最久未使用页面置换算法时,假如一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、1、5,当分配给该作业的物理块数M分别为3和4时,试计算在访问过程中所发生的缺页次数和缺页率。请给出分析过程。
解析:所谓的最近最久未使用(LRU Least Recently Used)页面置换算法就是说 所淘汰的页面将是最近最久未使用的页面,只需要向前(左)看即可,谁最远淘汰谁。
页面置换:内存物理块不够,需要淘汰页面
缺页中断:要访问的页不在主存
缺页率:发生缺页次数/总共的页面数
物理块数为3时:
4 | 3 | 2 | 1 | 4 | 3 | 5 | 4 | 3 | 2 | 1 | 5 |
---|---|---|---|---|---|---|---|---|---|---|---|
4 | 4 | 4 | 1 | 1 | 1 | 5 | 5 | 5 | 2 | 2 | 2 |
3 | 3 | 3 | 4 | 4 | 4 | 4 | 4 | 4 | 1 | 1 | |
2 | 2 | 2 | 3 | 3 | 3 | 3 | 3 | 3 | 5 | ||
页面置换1 | 页面置换2 | 页面置换3 | 页面置换4 | 页面置换5 | 页面置换6 | 页面置换7 | |||||
缺页中断1 | 缺页中断2 | 缺页中断3 | 缺页中断4 | 缺页中断5 | 缺页中断6 | 缺页中断7 | 缺页中断8 | 缺页中断9 | 缺页中断10 |
页面置换1:当进程访问页面1时,将会产生页面置换,4 3 2进行淘汰,往近处(左)观察,页面4最近未使用,则淘汰页面4。
页面置换2:当进程访问页面4时,将会产生页面置换,1 3 2进行淘汰,往近处(左)观察,页面3最近未使用,则淘汰页面3。
页面置换3:当进程访问页面3时,将会产生页面置换,1 4 2进行淘汰,往近处(左)观察,页面2最近未使用,则淘汰页面2。
页面置换4:当进程访问页面5时,将会产生页面置换,1 4 3进行淘汰,往近处(左)观察,页面1最近未使用,则淘汰页面1。
页面置换5:当进程访问页面2时,将会产生页面置换,5 4 3进行淘汰,往近处(左)观察,页面5最近未使用,则淘汰页面5。
页面置换6:当进程访问页面1时,将会产生页面置换,2 4 3进行淘汰,往近处(左)观察,页面4最近未使用,则淘汰页面4。
页面置换7:当进程访问页面5时,将会产生页面置换,2 1 3进行淘汰,往近处(左)观察,页面3最近未使用,则淘汰页面3。
缺页次数:10
缺页率:10/12
物理块数为4时:
4 | 3 | 2 | 1 | 4 | 3 | 5 | 4 | 3 | 2 | 1 | 5 |
---|---|---|---|---|---|---|---|---|---|---|---|
4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 5 |
3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | |
2 | 2 | 2 | 2 | 5 | 5 | 5 | 5 | 1 | 1 | ||
1 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | |||
页面置换1 | 页面置换2 | 页面置换3 | 页面置换4 | ||||||||
缺页中断1 | 缺页中断2 | 缺页中断3 | 缺页中断4 | 缺页中断5 | 缺页中断6 | 缺页中断7 | 缺页中断8 |
页面置换1:当进程访问页面5时,将会产生页面置换,4 3 2 1进行淘汰,往近处(左)观察,页面2最近未使用,则淘汰页面2。
页面置换2:当进程访问页面2时,将会产生页面置换,4 3 5 1进行淘汰,往近处(左)观察,页面1最近未使用,则淘汰页面1。
页面置换3:当进程访问页面1时,将会产生页面置换,4 3 5 2进行淘汰,往近处(左)观察,页面5最近未使用,则淘汰页面5。
页面置换4:当进程访问页面5时,将会产生页面置换,4 3 1 2进行淘汰,往近处(左)观察,页面4最近未使用,则淘汰页面4。
缺页次数:8
缺页率:8/12