buffer pool
2022-03-22 12:46:56 0 举报
buffer pool
作者其他创作
大纲/内容
查询到,缓存命中
是否第一次访问
将此页加入到LRU链表中old部分的头节点处
查询缓存页hash表
将磁盘中的数据读取覆盖到该页
否
访问完成
根据策略判断是否需要将本页移动到young的头节点处(避免每次访问Young数据都需要进行调整链表,减小开销)
young区
是
未查询到,缓存未命中
取free链表中一页,将磁盘中的数据读取到该页中,并将此页从free链表中删除
记录下本页首次访问时间
old区
写入数据到内存中
将LRU链表尾页(脏页)中的数据刷新到磁盘中
将此页移到LRU链表的young头部
该页在LRU哪部分
将该页数据加入到fulsh链表中等待刷新
访问某页
free链表是否有空闲缓存页
获取数据
访问该页
LRU链表中的尾部是否有未修改的页面
是否是写操作
本次访问时间与本页首次访问时间间隔是否大于阈值
不作处理
收藏
0 条评论
下一页