[发明专利]一种用户态的双控内存镜像实现方法有效
申请号: | 201310449375.1 | 申请日: | 2013-09-24 |
公开(公告)号: | CN103530241A | 公开(公告)日: | 2014-01-22 |
发明(设计)人: | 余海滨 | 申请(专利权)人: | 创新科存储技术(深圳)有限公司;创新科存储技术有限公司 |
主分类号: | G06F12/10 | 分类号: | G06F12/10 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用户 内存 实现 方法 | ||
1.一种用户态的双控内存镜像实现方法,其特征在于,包括:
进行M次内存申请,M为正整数;其中,针对每次内存申请,分别进行如下处理:确定为本次申请所分配的N个内存段,N为正整数;针对每个内存段,分别将其物理地址映射到一个本端虚拟物理vphy地址,并将映射关系记录到本端的vphy表中;各本端vphy地址组成一个连续的vphy地址段,将该vphy地址段映射到一个用户态虚拟地址,并将映射关系记录到用户态地址映射表中;
获取对端的vphy表,将其中的各物理地址分别映射到一个本端vphy地址,并将映射关系记录到本端的vphy表中;其中,对于任意两个物理地址,如果其对应的对端vphy地址是连续的,则对应的本端vphy地址也是连续的;分别将本端未进行映射的、各连续的vphy地址段映射到一个用户态虚拟地址,并将映射关系记录到用户态地址映射表中。
2.根据权利要求1所述的方法,其特征在于,
所述针对每个内存段,分别将其物理地址映射到一个本端vphy地址,并将映射关系记录到本端的vphy表中包括:
针对每个内存段,分别在本端的vphy表中创建一个本端vphy节点,用于记录该内存段的物理地址;该本端vphy节点所对应的vphy地址即为所映射到的本端vphy地址;
所述获取对端的vphy表,将其中的各物理地址分别映射到一个本端vphy地址,并将映射关系记录到本端的vphy表中包括:
针对每个对端vphy节点,分别在本端的vphy表中创建一个本端vphy节点,用于记录对应的对端vphy节点中所记录的物理地址加上预定偏移量后的结果;该本端vphy节点所对应的vphy地址即为所映射到的本端vphy地址。
3.根据权利要求2所述的方法,其特征在于,
所述vphy表中进一步包括一个vphy0节点,用于记录所在vphy表的物理地址;
所述用户态地址映射表中进一步保存有:vphy0节点对应的vphy地址与映射到的用户态虚拟地址之间的映射关系。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
根据实际需求,动态调整所申请的内存;
所述调整包括:申请增加新的内存、释放已申请的部分内存。
5.根据权利要求4所述的方法,其特征在于,该方法进一步包括:
当每次对所申请的内存进行调整时,根据所作调整,对本端的vphy表以及用户态地址映射表进行适应性调整。
6.根据权利要求4所述的方法,其特征在于,该方法进一步包括:
当确定对端的vphy表每次发生调整时,根据所作调整,对本端的vphy表以及用户态地址映射表进行适应性调整。
7.根据权利要求1~6中任一项所述的方法,其特征在于,该方法进一步包括:
当访问任一用户态虚拟地址时,根据用户态地址映射表确定出该用户态虚拟地址对应的本端vphy地址;
根据本端的vphy表,确定出该本端vphy地址对应的物理地址;通过调用直接内存读取DMA引擎,访问该物理地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新科存储技术(深圳)有限公司;创新科存储技术有限公司,未经创新科存储技术(深圳)有限公司;创新科存储技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310449375.1/1.html,转载请声明来源钻瓜专利网。