System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 久久久无码精品人妻一区,人妻无码中文字幕,国产综合无码一区二区辣椒
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    基于有界鎖的松弛一致性分布式共享內存同步方法及系統技術方案

    技術編號:40314439 閱讀:13 留言:0更新日期:2024-02-07 20:56
    本發明專利技術提供了一種基于有界鎖的松弛一致性分布式共享內存同步方法及系統,包括:將應用程序被授予分布式鎖之后在關鍵區域內訪問共享內存的范圍作為額外的語義信息,在應用程序訪問共享內存之前,該范圍內的最新更改會被應用到本地,一塊對應的影子內存區域會被創建在本地,在應用程序釋放分布式鎖的時候,通過比較該范圍中內存的內容以及影子內存區域中的內容來獲取該范圍內的內存更改,并將這些更改加入到釋放分布式鎖的請求中,這些更改內容會被傳遞給下一個該鎖的持有者。與現有技術相比,本發明專利技術具有低時延、純用戶態、可擴展性高等特點。

    【技術實現步驟摘要】

    本專利技術涉及分布式系統,具體地,涉及一種基于有界鎖的松弛一致性分布式共享內存同步方法及系統


    技術介紹

    1、在分布式系統領域中,使用分布式共享內存的形式來進行數據的共享與傳遞是一項重要技術,分布式共享內存這一抽象可以在機器間透明地進行數據共享與傳遞而無需進行數據序列化和反序列化操作。

    2、目前學術界和工業界已經提出了一些在現實計算機分布式系統中實現分布式共享內存這一抽象的方法,這些方法關注于保證分布式共享內存這一抽象對于上層應用的透明性的同時,維護跨機器的內存一致性。

    3、目前,一種分布式共享內存的實現方式是遵循強一致性的分布式共享內存,這種實現方式遵循msi等經典的緩存一致性協議,每次維護一致性的時候都以頁為單位將內存更新內容廣播到分布式系統中的所有機器上,這類方案雖然可以在保證分布式共享內存對于上層應用的透明性的同時保證了跨機器的內存一致性,但是其缺點在于維護一致性的頻率高、粒度粗、同步對象為所有機器所以可擴展性很差,即便借助高速網絡信道,例如遠端內存直接訪問技術和可編程交換機,來優化一致性維護過程,維護一致性的開銷仍然十分顯著。

    4、分布式共享內存的另一種實現形式是松弛一致性共享內存,它借助了應用程序的語義信息,即應用程序的控制同步與數據同步之間存在相關性:應用程序需要在進出關鍵區域時進行拿鎖/放鎖操作,以及在關鍵區域內以單線程訪問共享數據,在這種實現方式中,對于共享數據更改的同步只會發生在應用程序拿鎖/放鎖的時候,這類實現方式能夠顯著降低維護一致性的開銷;其缺點在于,為了能夠透明地記錄應用程序在關鍵區域內對于共享數據的更改,需要在拿放鎖的時候修改整個共享區域的寫權限,這一操作會帶來顯著的時間開銷。

    5、專利文獻cn101207515a公開了一種多機共享內存的處理方法、實現方法和同步方法,處理方法包括以下步驟:a1.預定義內存數據對象;a2.分布式網管系統的任一節點的主機啟動時,在本地內存中創建所述內存數據對象;a3.各主機判斷某一節點的內存數據對象發生變化,則分別更新本地的內存數據對象。然而該專利無法完全解決目前存在的技術問題。


    技術實現思路

    1、針對現有技術中的缺陷,本專利技術的目的是提供一種基于有界鎖的松弛一致性分布式共享內存同步方法及系統。

    2、根據本專利技術提供的基于有界鎖的松弛一致性分布式共享內存同步方法,包括:

    3、步驟1:應用程序在訪問共享數據之前調用請求分布式鎖的接口,分布式共享內存庫根據鎖請求的上下文獲取應用程序在關鍵區域內要訪問的共享內存區域的范圍;

    4、步驟2:在應用程序被授予鎖的時候,將該范圍內所有的更改內容單元應用到本地內存中;

    5、步驟3:如果被訪問的內存范圍的大小大于一個內存頁,則執行步驟4;反之執行步驟5;

    6、步驟4:分布式共享內存庫移除該內存范圍的寫權限,然后執行步驟6;

    7、步驟5:為該內存范圍在本地分配一塊影子內存區域,將該內存范圍中的初始內容拷貝到該影子內存區域中,將該內存范圍的起始地址、大小以及該影子內存區域的起始地址記錄下來;

    8、步驟6:應用程序訪問該范圍內的分布式共享內存,如果在這一過程中出現了頁權限錯誤,則執行步驟7;如果應用程序完成了對于共享內存的訪問,則執行步驟8;

    9、步驟7:恢復該內存頁的寫權限,分配一塊影子內存區域,將該內存頁中的初始內容拷貝到影子內存區域中,將該內存頁的起始地址、大小以及影子內存區域的起始地址記錄下來,返回步驟6繼續執行;

    10、步驟8:根據步驟5和步驟7記錄的影子內存區域信息生成更改內容單元,并將這些更改內容單元加入到該范圍內共享內存已有的更改內容單元列表中;

    11、步驟9:應用程序調用接口釋放分布式鎖。

    12、優選地,一個更改內容單元由分布式共享內存空間中的一個地址和一個大小為8字節的更改內容組成,應用程序指定的內存范圍中的所有更改內容單元都被添加到授予鎖的網絡包中。

    13、優選地,內存范圍的大小由應用程序通過請求分布式鎖的接口傳入;影子內存區域的大小為內存頁的大小。

    14、優選地,分布式共享內存庫在生成更改內容單元的過程中,對于一塊影子內存區域,先判斷其內容和對應的共享內存中的內容是否相同,如果不相同,則生成更改內容單元。

    15、優選地,分布式共享內存庫把當前范圍內的共享內存的所有更改內容加入到釋放分布式鎖的請求中,分布式鎖管理者將該范圍內的更改內容單元發送給下一個被授予該鎖的應用程序線程。

    16、根據本專利技術提供的基于有界鎖的松弛一致性分布式共享內存同步系統,包括:

    17、模塊m1:應用程序在訪問共享數據之前調用請求分布式鎖的接口,分布式共享內存庫根據鎖請求的上下文獲取應用程序在關鍵區域內要訪問的共享內存區域的范圍;

    18、模塊m2:在應用程序被授予鎖的時候,將該范圍內所有的更改內容單元應用到本地內存中;

    19、模塊m3:如果被訪問的內存范圍的大小大于一個內存頁,則觸發模塊m4;反之觸發模塊m5;

    20、模塊m4:分布式共享內存庫移除該內存范圍的寫權限,然后觸發模塊m6;

    21、模塊m5:為該內存范圍在本地分配一塊影子內存區域,將該內存范圍中的初始內容拷貝到該影子內存區域中,將該內存范圍的起始地址、大小以及該影子內存區域的起始地址記錄下來;

    22、模塊m6:應用程序訪問該范圍內的分布式共享內存,如果在這一過程中出現了頁權限錯誤,則觸發模塊m7;如果應用程序完成了對于共享內存的訪問,則觸發模塊m8;

    23、模塊m7:恢復該內存頁的寫權限,分配一塊影子內存區域,將該內存頁中的初始內容拷貝到影子內存區域中,將該內存頁的起始地址、大小以及影子內存區域的起始地址記錄下來,觸發模塊m6;

    24、模塊m8:根據模塊m5和模塊m7記錄的影子內存區域信息生成更改內容單元,并將這些更改內容單元加入到該范圍內共享內存已有的更改內容單元列表中;

    25、模塊m9:應用程序調用接口釋放分布式鎖。

    26、優選地,一個更改內容單元由分布式共享內存空間中的一個地址和一個大小為8字節的更改內容組成,應用程序指定的內存范圍中的所有更改內容單元都被添加到授予鎖的網絡包中。

    27、優選地,內存范圍的大小由應用程序通過請求分布式鎖的接口傳入;影子內存區域的大小為內存頁的大小。

    28、優選地,分布式共享內存庫在生成更改內容單元的過程中,對于一塊影子內存區域,先判斷其內容和對應的共享內存中的內容是否相同,如果不相同,則生成更改內容單元。

    29、優選地,分布式共享內存庫把當前范圍內的共享內存的所有更改內容加入到釋放分布式鎖的請求中,分布式鎖管理者將該范圍內的更改內容單元發送給下一個被授予該鎖的應用程序線程。

    30、與現有技術相比,本專利技術具有如下的有益效果:

    31、(1)與遵循本文檔來自技高網...

    【技術保護點】

    1.一種基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,包括:

    2.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,一個更改內容單元由分布式共享內存空間中的一個地址和一個大小為8字節的更改內容組成,應用程序指定的內存范圍中的所有更改內容單元都被添加到授予鎖的網絡包中。

    3.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,內存范圍的大小由應用程序通過請求分布式鎖的接口傳入;影子內存區域的大小為內存頁的大小。

    4.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,分布式共享內存庫在生成更改內容單元的過程中,對于一塊影子內存區域,先判斷其內容和對應的共享內存中的內容是否相同,如果不相同,則生成更改內容單元。

    5.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,分布式共享內存庫把當前范圍內的共享內存的所有更改內容加入到釋放分布式鎖的請求中,分布式鎖管理者將該范圍內的更改內容單元發送給下一個被授予該鎖的應用程序線程。

    6.一種基于有界鎖的松弛一致性分布式共享內存同步系統,其特征在于,包括:

    7.根據權利要求6所述的基于有界鎖的松弛一致性分布式共享內存同步系統,其特征在于,一個更改內容單元由分布式共享內存空間中的一個地址和一個大小為8字節的更改內容組成,應用程序指定的內存范圍中的所有更改內容單元都被添加到授予鎖的網絡包中。

    8.根據權利要求6所述的基于有界鎖的松弛一致性分布式共享內存同步系統,其特征在于,內存范圍的大小由應用程序通過請求分布式鎖的接口傳入;影子內存區域的大小為內存頁的大小。

    9.根據權利要求6所述的基于有界鎖的松弛一致性分布式共享內存同步系統,其特征在于,分布式共享內存庫在生成更改內容單元的過程中,對于一塊影子內存區域,先判斷其內容和對應的共享內存中的內容是否相同,如果不相同,則生成更改內容單元。

    10.根據權利要求6所述的基于有界鎖的松弛一致性分布式共享內存同步系統,其特征在于,分布式共享內存庫把當前范圍內的共享內存的所有更改內容加入到釋放分布式鎖的請求中,分布式鎖管理者將該范圍內的更改內容單元發送給下一個被授予該鎖的應用程序線程。

    ...

    【技術特征摘要】

    1.一種基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,包括:

    2.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,一個更改內容單元由分布式共享內存空間中的一個地址和一個大小為8字節的更改內容組成,應用程序指定的內存范圍中的所有更改內容單元都被添加到授予鎖的網絡包中。

    3.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,內存范圍的大小由應用程序通過請求分布式鎖的接口傳入;影子內存區域的大小為內存頁的大小。

    4.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,分布式共享內存庫在生成更改內容單元的過程中,對于一塊影子內存區域,先判斷其內容和對應的共享內存中的內容是否相同,如果不相同,則生成更改內容單元。

    5.根據權利要求1所述的基于有界鎖的松弛一致性分布式共享內存同步方法,其特征在于,分布式共享內存庫把當前范圍內的共享內存的所有更改內容加入到釋放分布式鎖的請求中,分布式鎖管理者將該范圍內的更改內容單元發送給下一個被授予該鎖的應用程序線程。

    ...

    【專利技術屬性】
    技術研發人員:陳榕程可張漢澤陳海波臧斌宇
    申請(專利權)人:上海交通大學
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 亚洲国产无套无码av电影| 国产色综合久久无码有码| 亚洲熟妇无码久久精品| 久久精品无码一区二区三区不卡| 国产强伦姧在线观看无码| 成人免费午夜无码视频| 中文无码vs无码人妻| 在线观看无码AV网址| 无码专区狠狠躁躁天天躁| 狠狠精品干练久久久无码中文字幕| 免费无码黄网站在线看| 日韩中文无码有码免费视频| 久久精品国产亚洲AV无码麻豆| 亚洲一区AV无码少妇电影☆| 精品无码中文视频在线观看| 999久久久无码国产精品| 亚洲中文字幕无码不卡电影| 亚洲午夜AV无码专区在线播放| 精品亚洲AV无码一区二区三区 | HEYZO无码中文字幕人妻| 久久人妻内射无码一区三区 | 日韩AV无码中文无码不卡电影| 免费无码午夜福利片| 少妇无码AV无码专区线| 欧洲黑大粗无码免费| 亚洲av无码成人精品区一本二本 | 国产真人无码作爱免费视频| 国产精品无码翘臀在线观看| 国产丰满乱子伦无码专| 人妻丰满熟妇AV无码区| 精品久久久久久久无码久中文字幕 | 国产精品VA在线观看无码不卡| 亚洲AV无码乱码精品国产| 日韩免费无码一区二区视频| 蜜色欲多人AV久久无码| 精品久久久无码人妻字幂| 亚洲熟妇少妇任你躁在线观看无码| 狠狠久久精品中文字幕无码| 亚洲AV无码成人精品区大在线 | 日韩精品无码免费专区网站| 粉嫩高中生无码视频在线观看|