task 1 实现 LRU-k
Evivt, 从缓冲里淘汰掉一个页- 当缓冲满的时候
RecordAcess, 记录下这个访问的页的页 id 以及时间戳- 当一个页被访问时,需要进行
pin,一般这个操作位于pin之后
- 当一个页被访问时,需要进行
Remove, 清空一个页的历史访问记录- 当一个页被从 BFM 中删除时才调用
SetEvictable, 设置一个页的状态为可以被删除或者不可以被删除,显然当pin的计数为0时,可以调用设置为可以被删除。Size, 返回当前的可淘汰的页的数量
- 读取一个页
- 在 buffer 里面
- 不在 buffer 里面
- 写一个页
- 在 buffer 里面
- 不在 buffer 里面