[发明专利]采用混合目录的双控存储服务器的缓存一致性实现方法有效
申请号: | 201410367779.0 | 申请日: | 2014-07-30 |
公开(公告)号: | CN104133785B | 公开(公告)日: | 2017-03-08 |
发明(设计)人: | 戴鸿君;于治楼 | 申请(专利权)人: | 浪潮集团有限公司 |
主分类号: | G06F12/0895 | 分类号: | G06F12/0895 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 张靖 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 采用 混合 目录 存储 服务器 缓存 一致性 实现 方法 | ||
技术领域
本发明涉及一种采用混合目录的双控存储服务器的缓存一致性实现方法,属于计算机存储服务器设计领域。
背景技术
Cache一致性协议决定系统为维护一致性所做的具体动作,直接影响系统性能。
基于目录的协议的特点是:内存块中保存有高速缓存目录,记录了高速缓存块驻留在哪里的信息,从而维护高速缓存的一致性。
基于目录的协议又可以分为三类:全映射目录、有限目录和链式目录。
基于目录的协议的工作方式是:在内存块的高速缓存目录中记录着每个存储块当前的状态和当前的信息。
当前的信息指明哪些高速缓存中有该存储器的拷贝。
当高速缓存需要读一个块的信息时,它向内存发送申请,内存接到申请后,将其当前的内容发送给高速缓存,并在目录中记录该高速缓存的地址;当高速缓存需要将某个块置为无效时,除了在高速缓存中将其置为无效外,还应该发消息通知内存修改其目录;当存储器的信息被修改时,内存需要根据目录中的信息对具有其拷贝的高速缓存块发广播,通知其信息已经更改,将这个拷贝设置成无效。
在全映射目录中,存放与全局存储器的每个块有关的数据,系统中的每个高速缓存可以同时存储任何数据块的拷贝。
而在有限目录中,目录的个数是有限的,最多只允许有限个数的高速缓存同时存储合格数据块的内容。当有超过限制个数的高速缓存申请读这个内存块时,需要进行驱逐,选择一个高速缓存,将其置为无效。
发明内容
本发明要解决的技术问题是:提供一种采用混合目录的双控存储服务器的缓存一致性实现方法。
本发明所采用的技术方案为:
一种采用混合目录的双控存储服务器的缓存一致性实现方法,针对双控存储服务器的缓存一致性实现,将有限目录和链式目录结合在一起,构成一种新的目录方式;在某一时刻,有限目录的限制是最多m块,存储某个内存块的高速缓存的数量为k,那么当k<m时,采用有限目录的方式;当k>m时,超过有限目录容量的部分采用链式目录。这样既可以保证系统的可扩展性,又提高了系统的效率,同时兼顾了有限目录的效率和链式目录的容量。
当k小于m时,采用有限目录的方式,具体操作如下:
有控制器要读取数据时,向内存块发送请求,内存块检查其内容的有效性;如果重写位为O,直接将内存的数据发送给高速缓存,并添加在有限目录第k+1个位置上,k=k+1;如果重写位为1,命令重写的高速缓存将最新的数据分别发送给申请数据的高速缓存和内存,并将重写位置O,将申请数据的高速缓存添加进目录;
有控制器将高速缓存置为无效时,向内存块发送通知,内存块将这个处理机的序号从目录中删除,删除时直接将当前的最后一项移动到空缺的位置上。
有控制器对内存进行写操作时,将当前在读的其它高速缓存全部置为无效,对当前的目录项进行一次扫描,逐个向相应的高速缓存发送无效消息,确认所有块都无效后将重写位置1。
当k大于m时,超过的部分采用链式目录结构,具体操作如下:
有控制器要读取数据时,内存向高速缓存发送数据,将这个控制器添加到链表的首部。
有控制器需要将高速缓存置为无效时,对有限目录和链表均进行扫描,如果记录在有限目录中,将其从目录中删除,再将链表的首记录信息移动到有限目录中,删掉队首的记录;如果是在链表中,直接删除链表的这个元素即可。
若有控制器对内存进行写操作时,将当前在读的其它高速缓存全部置为无效,对当前的目录项以及链表元素进行一次扫描,逐个向相应的高速缓存发送无效消息、确认所有块都无效,将重写位置1。
所述链式目录通过一个目录指针链表来跟踪共享数据拷贝,内存块中只保存这个链表的首指针,各个高速缓存中保存链表的元素,申请读数据块和置数据块为无效表现为对链表的维护。在有限目录中,目录的个数是有限的,最多只允许有限个数的高速缓存同时存储合格数据块的内容。当有超过限制个数的高速缓存申请读这个内存块时,需要选择一个高速缓存,将其置为无效。
本发明的有益效果为:采用本发明所提供的技术,既可以保证系统的可扩展性,又提高了系统的效率,同时兼顾了有限目录的效率和链式目录的容量。
具体实施方式
下面通过具体实施方式对本发明进一步说明:
实施例1:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮集团有限公司,未经浪潮集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410367779.0/2.html,转载请声明来源钻瓜专利网。