在计算机体系结构设计时,通常在CPU和内存之间设置小容量的Cache机制,以提高CPU数据输入输出速率。通常当Cache存满数据后,新数据必须替换(淘汰) Cache中的某些旧数据。常用的数据替换算法包括(随机算法、先进先出(FIFO) 和近期最少使用(LRU))。
Cache是设置在CPU与内存之间的高速小容量存储部件,用于缓解CPU与内存的速度差异,提升数据存取效率。当Cache存满时需通过替换算法淘汰旧数据,目前主流常用的三类替换算法分别是随机算法、先进先出(FIFO)算法和近期最少使用(LRU)算法。其中随机算法实现逻辑简单,随机选取待淘汰的缓存块;先进先出算法依据数据进入Cache的顺序,始终淘汰最早进入的缓存块;近期最少使用算法则淘汰最长时间未被访问的缓存块,命中率相对较高。另外要明确,先进后出(FILO)属于堆栈的访问策略,并非Cache替换算法;轮询调度(RRS)是进程调度算法,和Cache替换无关;最近最常使用(MRU)算法仅在特定场景适用,不属于主流常用的Cache替换算法范畴。
本题考察的是Cache常用的数据替换算法。
当Cache存满时需通过替换算法淘汰旧数据,目前主流常用的三类替换算法分别是随机算法、先进先出(FIFO)算法和近期最少使用(LRU)算法。另外要明确,先进后出(FILO)属于堆栈的访问策略,并非Cache替换算法。轮询调度(RRS)是进程调度算法,和Cache替换无关。最近最常使用(MRU)算法仅在特定场景适用,不属于主流常用的Cache替换算法范畴。
本小问答案是 随机算法、先进先出(FIFO) 和近期最少使用(LRU)。题干中的“常用的数据替换算法”对应随机算法、先进先出(FIFO) 和近期最少使用(LRU)。
因此,选项 A 正确。
