[發(fā)明專利]數(shù)據(jù)同步方法和裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201110241677.0 | 申請(qǐng)日: | 2011-08-22 |
| 公開(公告)號(hào): | CN102436366A | 公開(公告)日: | 2012-05-02 |
| 發(fā)明(設(shè)計(jì))人: | 王振國(guó) | 申請(qǐng)(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號(hào): | G06F9/38 | 分類號(hào): | G06F9/38 |
| 代理公司: | 北京龍雙利達(dá)知識(shí)產(chǎn)權(quán)代理有限公司 11329 | 代理人: | 王君;肖鸝 |
| 地址: | 518129 廣東*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù) 同步 方法 裝置 | ||
1.一種數(shù)據(jù)同步方法,其特征在于,包括:
代碼掃描單元掃描代碼以捕獲同步指令;
所述代碼掃描單元將所捕獲的同步指令替換為陷入指令;
在代碼運(yùn)行至所述陷入指令時(shí),分布式共享內(nèi)存DSM單元獲取代碼執(zhí)行權(quán),其中所述DSM單元實(shí)現(xiàn)并發(fā)多寫協(xié)議,在執(zhí)行所述同步指令時(shí)實(shí)現(xiàn)單寫協(xié)議。
2.如權(quán)利要求1所述的方法,其特征在于,在所述代碼運(yùn)行至所述陷入指令之前,還包括:
所述代碼掃描單元掃描代碼以捕獲流程改變指令,并將所述流程改變指令替換為所述陷入指令。
3.如權(quán)利要求2所述的方法,其特征在于,還包括:
所述DSM單元在執(zhí)行所述流程改變指令時(shí),判斷流程改變指向的目標(biāo)頁面是否為已掃描的頁面;
在所述流程改變指向的目標(biāo)頁面為已掃描的頁面時(shí),將執(zhí)行流程改變至所述已掃描的頁面中的對(duì)應(yīng)代碼并執(zhí)行所述對(duì)應(yīng)代碼;
在所述流程改變指向的目標(biāo)頁面為未掃描的頁面時(shí),對(duì)所述未掃描的頁面執(zhí)行所述掃描代碼以捕獲同步指令的過程和所述將所捕獲的同步指令替換為陷入指令的過程。
4.如權(quán)利要求1所述的方法,其特征在于,如果所述同步指令為內(nèi)存屏障指令,則所述DSM單元在執(zhí)行所述同步指令時(shí)實(shí)現(xiàn)單寫協(xié)議,包括:
所述DSM單元等待所有數(shù)據(jù)更新操作完成之后,返回代碼執(zhí)行權(quán)。
5.如權(quán)利要求1所述的方法,其特征在于,如果所述同步指令為原子操作指令,則所述DSM單元在執(zhí)行所述同步指令時(shí)實(shí)現(xiàn)單寫協(xié)議,包括:
向其他節(jié)點(diǎn)發(fā)送廣播通知,以使得其他節(jié)點(diǎn)將對(duì)應(yīng)的數(shù)據(jù)設(shè)為只讀,禁止對(duì)所述對(duì)應(yīng)的數(shù)據(jù)進(jìn)行同步操作;
在執(zhí)行完所述原子操作指令之后將更新數(shù)據(jù)廣播給其他節(jié)點(diǎn),以使得其他節(jié)點(diǎn)更新所述對(duì)應(yīng)的數(shù)據(jù),并允許對(duì)所述對(duì)應(yīng)的數(shù)據(jù)進(jìn)行同步操作。
6.如權(quán)利要求1所述的方法,其特征在于,還包括:
在代碼執(zhí)行的過程中產(chǎn)生缺頁異常時(shí),所述DSM單元獲取代碼執(zhí)行權(quán)。
7.如權(quán)利要求6所述的方法,其特征在于,
如果所述缺頁異常由讀操作引起,則所述DSM單元生成所述讀操作所針對(duì)的數(shù)據(jù)的副本,并使得其他節(jié)點(diǎn)上對(duì)應(yīng)的副本設(shè)為只讀;
如果所述缺頁異常由寫操作引起,則當(dāng)所述寫操作所針對(duì)的頁面不存在時(shí),所述DSM單元申請(qǐng)高速緩存并將數(shù)據(jù)寫入該高速緩存中,當(dāng)所述寫操作所針對(duì)的頁面存在時(shí),所述DSM單元更新數(shù)據(jù)并將更新的數(shù)據(jù)以及更新的全局時(shí)間廣播給其他節(jié)點(diǎn),以便其他節(jié)點(diǎn)根據(jù)所述全局時(shí)間更新對(duì)應(yīng)的數(shù)據(jù)。
8.如權(quán)利要求1-7任一項(xiàng)所述的方法,其特征在于,所述并發(fā)多寫協(xié)議為寫更新協(xié)議。
9.一種數(shù)據(jù)同步裝置,其特征在于,包括:
代碼掃描單元,用于掃描代碼以捕獲同步指令,將所捕獲的同步指令替換為陷入指令;
分布式共享內(nèi)存DSM單元,用于在代碼運(yùn)行至所述陷入指令時(shí),獲取代碼執(zhí)行權(quán),其中所述DSM單元實(shí)現(xiàn)并發(fā)多寫協(xié)議,在執(zhí)行所述同步指令時(shí)實(shí)現(xiàn)單寫協(xié)議。
10.如權(quán)利要求9所述的裝置,其特征在于,
所述代碼掃描單元還用于掃描代碼以捕獲流程改變指令,并將所述流程改變指令替換為所述陷入指令。
11.如權(quán)利要求10所述的裝置,其特征在于,所述DSM單元還用于在執(zhí)行所述流程改變指令時(shí),判斷流程改變指向的目標(biāo)頁面是否為已掃描的頁面,在所述流程改變指向的目標(biāo)頁面為已掃描的頁面時(shí),將執(zhí)行流程改變至所述已掃描的頁面中的對(duì)應(yīng)代碼并執(zhí)行所述對(duì)應(yīng)代碼,在所述流程改變指向的目標(biāo)頁面為未掃描的頁面時(shí),調(diào)用所述代碼掃描單元對(duì)所述未掃描的頁面執(zhí)行所述掃描代碼以捕獲同步指令并將所捕獲的同步指令替換為陷入指令的過程。
12.如權(quán)利要求9所述的裝置,其特征在于,如果所述同步指令為內(nèi)存屏障指令,則所述DSM單元具體用于等待所有數(shù)據(jù)更新操作完成之后,返回代碼執(zhí)行權(quán)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110241677.0/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





