[发明专利]基于SSD的大容量缓存中的LRU策略实现方法有效
申请号: | 201310097306.9 | 申请日: | 2013-03-25 |
公开(公告)号: | CN103150136A | 公开(公告)日: | 2013-06-12 |
发明(设计)人: | 肖侬;卢宇彤;陈志广;周恩强;刘芳;所光;谢旻;董勇;张伟 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F5/16 | 分类号: | G06F5/16 |
代理公司: | 湖南兆弘专利事务所 43008 | 代理人: | 赵洪;谭武艺 |
地址: | 410073 湖南省长沙市砚瓦池正*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于SSD的大容量缓存中的LRU策略实现方法,该方法将上层应用读写请求的逻辑地址组织成FIFO队列,两个计数型布隆选择器分别用于记录FIFO队列中只访问过一次和访问过多次的逻辑地址,FIFO队列和两个计数型布隆选择器能够准确地模拟LRU队列的行为。FIFO队列保存在SSD上,不占用内存空间。两个计数型布隆选择器保存在内存中,但占用内存空间很小。本发明以很低的内存开销实现了LRU队列的功能,具有实现简单、操作快捷、存储占用空间低、内存开销低的优点。 | ||
搜索关键词: | 基于 ssd 容量 缓存 中的 lru 策略 实现 方法 | ||
【主权项】:
一种基于SSD的大容量缓存中的LRU策略实现方法,其特征在于实施步骤如下:1)在SSD上分配一块连续的地址空间初始化FIFO队列;在内存中建立用于记录只访问过一次的磁盘逻辑地址的第一计数型布隆选择器和用于记录访问过两次以上的磁盘逻辑地址的第二计数型布隆选择器的数据结构,在内存中分别申请两块地址空间作为待写入磁盘逻辑地址缓冲区和待替换磁盘逻辑地址缓冲区,跳转执行下一步;2)接收操作系统对磁盘逻辑地址的读写请求,跳转执行下一步;3)检查读写请求的磁盘逻辑地址是否记录在第二计数型布隆选择器中,若在第二计数型布隆选择器中存在,等待在新的读写请求到来时跳转执行步骤2);否则跳转执行步骤4);4)检查读写请求的磁盘逻辑地址是否记录在第一计数型布隆选择器中,若在第一计数型布隆选择器中存在,跳转执行步骤5);否则,跳转执行步骤6);5)将读写请求的磁盘逻辑地址从第一计数型布隆选择器中删除,同时将读写请求的磁盘逻辑地址添加到第二计数型布隆选择器中,等待在新的读写请求到来时跳转执行步骤2);6)判定第一计数型布隆选择器和第二计数型布隆选择器的数据结构中均不包含读写请求的磁盘逻辑地址,将读写请求的磁盘逻辑地址添加至第一计数型布隆选择器中,跳转执行下一步;7)将读写请求的磁盘逻辑地址写到待写入磁盘逻辑地址缓冲区,跳转执行下一步;8)检查待写入磁盘逻辑地址缓冲区是否写满,若未写满则跳转执行步骤10),否则跳转执行步骤9);9)将待写入磁盘逻辑地址缓冲区中的磁盘逻辑地址刷新到SSD中FIFO队列的尾部,同时将FIFO队列的尾部指针递增,跳转执行下一步;10)判定读写请求的请求类型,如果请求类型为写请求,则直接将待写入的用户数据写到SSD上;如果请求类型为读请求,由于没有在SSD上命中,先从底层存储系统读出数据,将数据返回给上层应用的同时,将数据写到SSD上;跳转执行下一步;11)检查SSD的空闲存储空间占SSD总容量的比例是否小于第一预设阈值,若SSD的空闲存储空间占SSD总容量的比例小于第一预设阈值则跳转执行步骤12),否则跳转执行步骤2)等待新的读写请求到来;12)读取FIFO队列的头部到待替换磁盘逻辑地址缓冲区,跳转执行下一步;13)取出所述待替换磁盘逻辑地址缓冲区的首个磁盘逻辑地址作为当前磁盘逻辑地址,跳转执行下一步;14)判断当前磁盘逻辑地址是否在第二计数型布隆选择器中,如果在第二计数型布隆选择器中则跳转执行步骤15);否则跳转执行步骤16);15)将当前磁盘逻辑地址从第二计数型布隆选择器中删除,同时将当前磁盘逻辑地址添加到第一计数型布隆选择器中,跳转执行步骤17);16)判断当前磁盘逻辑地址是否在第一计数型布隆选择器中,如果在第一计数型布隆选择器中则将当前磁盘逻辑地址从第一计数型布隆选择器中删除,跳转执行步骤18);17)将当前磁盘逻辑地址写入到待写入磁盘逻辑地址缓冲区,使得当前磁盘逻辑地址对应的数据继续保留在SSD上,跳转执行步骤18);18)判断所述待替换磁盘逻辑地址缓冲区的所有磁盘逻辑地址是否已经全部处理完毕,如果尚未处理完毕则获取下一个磁盘逻辑地址作为当前磁盘逻辑地址,跳转执行步骤14);如果已经处理完毕则跳转执行步骤19);19)检查SSD的空闲存储空间占SSD总容量的比例是否大于第二预设阈值,所述第二预设阈值比第一预设阈值大,若SSD的空闲存储空间占SSD总容量的比例大于第二预设阈值,则等待在新的读写请求到来时跳转执行步骤2);否则跳转执行步骤12)。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310097306.9/,转载请声明来源钻瓜专利网。
- 上一篇:一种高强度玻璃钢桥架
- 下一篇:一种结构简单的止回阀