[发明专利]多核CPU的缓存管理方法、装置及设备有效
申请号: | 201210098772.4 | 申请日: | 2012-04-06 |
公开(公告)号: | CN102662865A | 公开(公告)日: | 2012-09-12 |
发明(设计)人: | 彭琮 | 申请(专利权)人: | 福建星网锐捷网络有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
地址: | 350002 福建省福州市仓*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多核 cpu 缓存 管理 方法 装置 设备 | ||
1.一种多核CPU的缓存管理方法,其特征在于,包括:
当多核CPU中的第一CPU分配缓存时,在第一CPU专属的多个第一缓存队列中的一个队列的头指针指向的缓存指针开始分配缓存;
当多核CPU中的第一CPU释放缓存时,确定待释放缓存所属的第二CPU,并在第二CPU专属的多个第二缓存队列中确定所述第一CPU可释放的队列,根据所述确定的第一CPU可释放的队列的尾指针指向的缓存指针释放所述待释放缓存;
其中,每个缓存队列中的头指针与尾指针彼此不重合。
2.根据权利要求1所述的方法,其特征在于,每个缓存中携带所属CPU的标识,则所述确定待释放缓存所属的第二CPU包括:
读取待释放缓存中携带的所属CPU的标识,根据所述标识确定待释放缓存所属的第二CPU。
3.根据权利要求2所述的方法,其特征在于,所述第一CPU与所述第二CPU为同一CPU。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述第二CPU专属的多个第二缓存队列中的每个队列与多核CPU中的每个CPU之间存在对应关系,所述对应关系用于表征每个CPU在第二CPU专属的多个第二缓存队列中可以释放的队列;则所述在第二CPU专属的多个第二缓存队列中确定第一CPU可以释放的队列,包括:
根据所述对应关系,在第二CPU专属的多个第二缓存队列中确定所述第一CPU可以释放的队列。
5.根据权利要求4所述的方法,其特征在于,在所述对应关系中,每个第二缓存队列与多核CPU中的每个CPU之间为一对一或者多对一。
6.一种多核CPU的缓存管理装置,其特征在于,包括:
分配模块,用于当多核CPU中的第一CPU分配缓存时,在第一CPU专属的多个第一缓存队列中的一个队列的头指针指向的缓存指针开始分配缓存;
释放模块,用于当多核CPU中的第一CPU释放缓存时,确定待释放缓存所属的第二CPU,并在第二CPU专属的多个第二缓存队列中确定所述第一CPU可释放的队列,根据所述确定的第一CPU可释放的队列的尾指针指向的缓存指针释放所述待释放缓存;其中,每个缓存队列中的头指针与尾指针彼此不重合。
7.根据权利要求6所述的装置,其特征在于,所述释放模块包括:
所属CPU确定单元,用于确定待释放缓存所属的第二CPU;
可释放队列确定单元,用于在第二CPU专属的多个第二缓存队列中确定所述第一CPU可释放的队列;
释放单元,用于根据所述确定的第一CPU可释放的队列的尾指针指向的缓存指针释放所述待释放缓存;
其中,每个缓存中携带所属CPU的标识,则所属CPU确定单元包括:
读取子单元,用于读取待释放缓存中携带的所属CPU的标识;
确定子单元,用于根据所述标识确定待释放缓存所属的第二CPU。
8.根据权利要求7所述的装置,其特征在于,所述第一CPU与所述第二CPU为同一CPU。
9.根据权利要求7或8所述的装置,其特征在于,所述第二CPU专属的多个第二缓存队列中的每个队列与多核CPU中的每个CPU之间存在对应关系,所述对应关系用于表征每个CPU在第二CPU专属的多个第二缓存队列中可以释放的队列;
则所述可释放队列确定单元用于:根据所述对应关系,在第二CPU专属的多个第二缓存队列中确定所述第一CPU可以释放的队列。
10.根据权利要求9所述的装置,其特征在于,在所述对应关系中,每个第二缓存队列与多核CPU中的每个CPU之间为一对一或者多对一。
11.一种网络设备,其特征在于,包括如权利要求6至10中任一项所述的多核CPU的缓存管理装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建星网锐捷网络有限公司,未经福建星网锐捷网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210098772.4/1.html,转载请声明来源钻瓜专利网。