[发明专利]一种缓存管理方法及其应用有效
| 申请号: | 201310138419.9 | 申请日: | 2013-04-19 |
| 公开(公告)号: | CN103257935A | 公开(公告)日: | 2013-08-21 |
| 发明(设计)人: | 陈俭喜;刘景宁;冯丹;黄赛;王璞 | 申请(专利权)人: | 华中科技大学 |
| 主分类号: | G06F12/08 | 分类号: | G06F12/08 |
| 代理公司: | 华中科技大学专利中心 42201 | 代理人: | 李佑宏 |
| 地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 缓存 管理 方法 及其 应用 | ||
1.一种缓存管理方法,用于对未命中缓存的请求数据进行控制,以筛选写入缓存的请求数据,减少缓存替换操作,其特征在于,该方法具体包括:
若缓存未被写满,则将请求数据块号写入缓存的空白空间;
若缓存已被写满,同时请求数据块号未记录在缓存筛选队列中,则不将请求数据块号写入缓存,而将请求数据块号写入缓存筛选队列的尾部;
若缓存已被写满,同时请求数据块号已被记录在所述缓存筛选队列当中,则将此数据块号从该缓存筛选队列中删除,并将此请求数据写入缓存;
其中,所述缓存筛选队列为LRU队列,用于记录最近被访问却未命中缓存的数据的磁盘块号。
2.根据权利要求1所述的一种缓存管理方法,其特征在于,所述缓存筛选队列的容量Cr可根据读写请求进行动态调整,即调整为Cr-C/(C-Cr)或Cr+C/Cr,其中,C为缓存能够存储的数据块号的最大数量。
3.根据权利要求1或2所述的一种缓存管理方法,其特征在于,在读写请求数据未命中缓存时,所述缓存筛选队列容量Cr调整为Cr+C/Cr,在读写请求数据未命中缓存时,所述缓存筛选队列容量Cr调整为Cr+C/Cr,其中,C为缓存能够存储的数据块号的最大数量。
4.根据权利要求2或3所述的一种缓存管理方法,其特征在于,所述缓存筛选队列的容量Cr在调整后若Cr小于0.1×C,则将其容量重新设置为Cr=0.1×C,若大于0.9×C,则将其容量设置为Cr=0.9×C。
5.根据权利要求2-4中任一项所述的一种缓存管理方法,其特征在于,所述缓存筛选队列容量Cr的初始值优选设置为0.1×C。
6.根据权利要求1-5中任一项所述的一种缓存管理方法,其特征在于,在将请求数据块号记录到所述缓存筛选队列后,若缓存筛选队列的实际长度超过其容量,则删除该缓存筛选队列的头部数据块号。
7.一种读写请求的执行控制方法,其应用上述权利要求1-6中任一项所述的缓存管理方法对读写请求数据进行缓存控制,其特征在于,该方法具体包括:
(1)建立LRU队列作为缓存筛选队列,该缓存筛选队列用于记录最近被访问却未命中缓存的数据的磁盘块号;
(2)根据读写请求对所述缓存筛选队列容量进行自适应调整;
(3)根据读写请求选择写入缓存的数据,包括:
若请求数据命中缓存,则不进行筛选,转到步骤(4);若请求数据未命中缓存,则执行上述权利要求1-6中任一项所述的缓存管理方法进行缓存控制;
(4)重定向读写请求并执行
(4.1)对于未被写入缓存的请求数据,则直接将读写请求重定向到磁盘上对应的地址,执行读写操作;
(4.2)对于已经存在于缓存,或者筛选后写入缓存的请求数据,将缓存中对应的数据块号移到缓存队列的尾部,然后将读写请求重定向到缓存中对应的地址,执行读写操作。
8.根据权利要求7所述的执行控制方法,其特征在于,所述缓存筛选队列容量的自适应调整方法如下:
(2.1)判断读写请求数据是否命中缓存,若命中,转入步骤(2.2);否则,转入步骤(2.3);
(2.2)自动将缓存筛选队列容量Cr的大小调整为Cr-C/(C-Cr);如果调整后的Cr小于0.1×C,则将缓存筛选队列容量设置为Cr=0.1×C,其中C为缓存能够存储的数据块的最大数量;
(2.3)自动将缓存筛选队列容量Cr的大小调整为Cr+C/Cr,如果调整后的Cr大于0.9×C,则将缓存筛选队列容量设置为Cr=0.9×C。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310138419.9/1.html,转载请声明来源钻瓜专利网。





