[发明专利]多线程访问多副本的方法和装置有效
申请号: | 201180000553.1 | 申请日: | 2011-05-20 |
公开(公告)号: | CN102203737A | 公开(公告)日: | 2011-09-28 |
发明(设计)人: | 王伟;刘仪阳;章晓峰 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 北京龙双利达知识产权代理有限公司 11329 | 代理人: | 毛威;张亮 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多线程 访问 副本 方法 装置 | ||
1.一种多线程访问多副本的方法,其特征在于,包括:
当进程的多个线程被分布到不同节点时,创建与所述进程的进程页目录表的内容相同的线程页目录表,每份线程页目录表包括用于指向特定数据的特殊表项和所述特殊表项之外的普通表项,其中每个线程对应一份线程页目录表,每个线程的执行基于相对应的线程页目录表,所述特定数据是在不同节点具有多副本的数据;
对于每个线程在被调度时,当该线程的线程页目录表中的特殊表项未指向在该线程所在节点中存储的所述特定数据时,基于该特定数据的物理地址,修改该特殊表项以指向该特定数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
在基于各线程的线程页目录表执行各线程的过程中,更新需要同步的线程页目录表中的普通表项以使各线程正常执行。
3.根据权利要求2所述的方法,其特征在于,所述更新需要同步的线程页目录表中的普通表项包括:
当特定线程页目录表中的普通表项改变时,基于该普通表项,更新其它所有线程页目录表中的普通表项。
4.根据权利要求2所述的方法,其特征在于,所述更新需要同步的线程页目录表中的普通表项包括:
当特定线程发生缺页异常时,寻找发生了变化的线程页目录表;
基于该线程页目录表中的普通表项,更新所述特定线程的线程页目录表中的普通表项。
5.根据权利要求1所述的方法,其特征在于,所述创建与所述进程的进程页目录表的内容相同的线程页目录表之前,还包括:
确定所述进程将使用的所有地址空间;
基于所述所有地址空间,创建进程页目录表以指向所述所有地址空间。
6.根据权利要求1所述的方法,所述特定数据包括如下至少一个:
内核代码和内核只读数据;
内存中的只读数据。
7.根据权利要求1所述的方法,其特征在于,所述创建与所述进程的进程页目录表的内容相同的线程页目录表包括:
将所述进程页目录表设置为主线程的线程页目录表;
对于其它线程,生成与所述进程页目录表的内容相同的线程页目录表。
8.根据权利要求1所述的方法,其特征在于,所述每个线程对应一份线程页目录表包括如下之一:
每个线程对应只属于自己的一份线程页目录表;
每个线程对应由与该线程处于同一节点的至少两个线程共享的一份线程页目录表;
所述多个线程中的部分线程中的每个线程对应只属于自己的一份线程页目录表,其他线程中的每个线程对应由与该线程处于同一节点的至少两个线程共享的一份线程页目录表。
9.一种用于多线程访问多副本的装置,其特征在于,包括:
第一创建模块,用于当进程的多个线程被分布到不同节点时,创建与所述进程的进程页目录表的内容相同的线程页目录表,每份线程页目录表包括用于指向特定数据的特殊表项和所述特殊表项之外的普通表项,其中每个线程对应一份线程页目录表,每个线程的执行基于相对应的线程页目录表,所述特定数据是在不同节点具有多副本的数据;
修改模块,用于对于每个线程在被调度时,当该线程的线程页目录表中的特殊表项未指向在该线程所在节点中存储的所述特定数据时,基于该特定数据的物理地址,修改该特殊表项以指向该特定数据。
10.根据权利要求9所述的装置,其特征在于,还包括:
更新模块,用于在基于各线程的线程页目录表执行各线程的过程中,更新需要同步的线程页目录表中的普通表项以使各线程正常执行。
11.根据权利要求10所述的装置,其特征在于,所述更新模块用于当特定线程页目录表中的普通表项改变时,基于该普通表项,更新其它所有线程页目录表中的普通表项。
12.根据权利要求10所述的装置,其特征在于,所述更新模块包括:
寻找单元,用于当特定线程发生缺页异常时,寻找发生了变化的线程页目录表;
更新单元,用于基于该线程页目录表中的普通表项,更新所述特定线程的线程页目录表中的普通表项。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180000553.1/1.html,转载请声明来源钻瓜专利网。