题目
下面的页面置换算法中会产生所谓抖动异常现象的是()。A. 最少使用页面置换算法(LFU)B. 先进先出页面置换算法(FIFO)C. 最近最久未使用页面置换算法(LRU)D. 最佳页面置换算法(OPT)
下面的页面置换算法中会产生所谓抖动异常现象的是()。
A. 最少使用页面置换算法(LFU)
B. 先进先出页面置换算法(FIFO)
C. 最近最久未使用页面置换算法(LRU)
D. 最佳页面置换算法(OPT)
题目解答
答案
B. 先进先出页面置换算法(FIFO)
解析
本题考查页面置换算法以及抖动异常现象的相关知识。解题的关键在于理解每个页面置换算法的工作原理,以及抖动异常现象产生的原因,然后判断哪个算法会导致抖动异常。
各算法原理及抖动异常分析
- 最少使用页面置换算法(LFU):
- 该算法的核心思想是选择在最近一段时间内使用次数最少的页面进行置换。它会记录每个页面的使用次数,当需要置换页面时,将使用次数最少的页面换出。
- 由于它是基于页面的使用频率来进行置换,在一定程度上能够反映页面的使用情况,一般不会出现抖动异常现象。
- 先进先出页面置换算法(FIFO):
- 此算法按照页面进入内存的先后顺序进行置换,即最先进入内存的页面最先被换出。
- 抖动异常是指在页面置换过程中,频繁地进行页面置换,导致系统大部分时间都花费在页面置换上,而真正用于执行程序的时间很少。FIFO 算法可能会出现 Belady 异常,即当分配给进程的物理块数增加时,缺页率反而上升,从而引发抖动异常。例如,在某些页面访问序列中,FIFO 算法会不断地将需要频繁访问的页面换出,又不断地将其换入,造成页面的频繁置换。
- 最近最久未使用页面置换算法(LRU):
- 该算法选择最近最久未使用的页面进行置换。它基于程序的局部性原理,认为最近最久未使用的页面在未来一段时间内也不会被使用。
- 这种算法能够较好地适应程序的局部性,通常不会出现抖动异常现象。
- 最佳页面置换算法(OPT):
- 这是一种理想化的算法,它选择未来最长时间内不会被访问的页面进行置换。
- 由于它是基于未来的页面访问情况进行置换,所以不会出现抖动异常现象,而且它的缺页率是所有页面置换算法中最低的。