[發明專利]適用于Linux容器應用的多進程同步方法在審
| 申請號: | 202110598729.3 | 申請日: | 2021-05-31 |
| 公開(公告)號: | CN113535414A | 公開(公告)日: | 2021-10-22 |
| 發明(設計)人: | 鄔科科;王燕;劉寧;馮丹榮 | 申請(專利權)人: | 寧波三星醫療電氣股份有限公司 |
| 主分類號: | G06F9/52 | 分類號: | G06F9/52 |
| 代理公司: | 寧波誠源專利事務所有限公司 33102 | 代理人: | 袁忠衛;李娜 |
| 地址: | 315191 浙江省寧*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 適用于 linux 容器 應用 進程 同步 方法 | ||
1.一種適用于Linux容器應用的多進程同步方法,其特征在于:所述方法包括,
S1、初始化線程鎖和進程鎖;
S2、獲取線程鎖,再獲取進程鎖,實現多線程多進程同步互斥以保護臨界區資源;
S3、完成任務后,釋放進程鎖,再釋放線程鎖,結束任務。
2.根據權利要求1所述適用于Linux容器應用的多進程同步方法,其特征在于:所述S2的具體操作過程如下,
S21、定義線程互斥鎖、條件變量以及無符號32位整型信號值;
S22、獲取線程互斥鎖,實現多線程對信號值進行保護;
S23、判斷信號值是否大于0,若是,執行S25,反之,執行S24;
S24、等待條件變量,線程進入阻塞狀態,并在收到條件變量的通知時,執行S25;
S25、對信號值減1;
S26、釋放線程互斥鎖;
S27、執行進程鎖加鎖操作。
3.根據權利要求1所述適用于Linux容器應用的多進程同步方法,其特征在于:所述S3釋放進程鎖和線程鎖的具體操作過程如下,
S31、執行進程所解鎖過程;
S32、獲取線程互斥鎖,實現多線程對信號值進行保護;
S33、對信號值加1;
S34、廣播通知條件變量;
S35、釋放線程互斥鎖。
4.根據權利要求2所述適用于Linux容器應用的多進程同步方法,其特征在于:所述方法在執行S24過程中還存在如下操作,
S241、接受用戶定義的最大超時時間T1,并獲取系統當前時間T2;
S242、判斷等待條件變量通知的已耗時間是否大于T2+T1,若是,結束加鎖過程,反之,執行S243;
S243、記錄得到條件變量通知時的系統當前時間T3,獲取線程同步已耗費的等待時間為T3-T2;
S244、計算剩余的超時時間ΔT=T1-(T3-T2),將其作為進程鎖加鎖的最大超時時間。
5.根據權利要求1所述適用于Linux容器應用的多進程同步方法,其特征在于:所述進程鎖由記錄鎖構造得到。
6.根據權利要求5所述適用于Linux容器應用的多進程同步方法,其特征在于:所述進程鎖具體構造方式如下,
1)初始化鎖,獲取文件句柄fd;
2)使用記錄鎖fcntl方法請求文件句柄fd對應的整個文件寫鎖,進行加鎖操作;
3)使用記錄鎖fcntl方法請求文件句柄fd對應的整個文件釋放鎖,進行解鎖操作;
4)通過close方法關閉文件句柄fd對應的整個文件,進行刪除鎖操作。
7.根據權利要求6所述適用于Linux容器應用的多進程同步方法,其特征在于:所述方法在構造進程鎖過程中,初始化鎖的操作具體包括,
1)提供由路徑path、特征字符c以及固定前綴sem組合生成的上鎖文件全路徑filepath;
2)通過open方法以讀寫方式和讀寫權限創建并打開filepath,獲取文件句柄fd。
8.根據權利要求1所述適用于Linux容器應用的多進程同步方法,其特征在于:所述方法對應的進程間同步過程包括當進程間正常同步時,對應操作,
1)進程1、進程2初始化鎖;
2)進程1先于進程2加鎖,并持有鎖,進程2后于進程1加鎖,進入阻塞等待狀態;
3)進程1處理完事務解鎖,進程2取得鎖并持有;
4)進程2處理完事務解鎖。
9.根據權利要求1所述適用于Linux容器應用的多進程同步方法,其特征在于:所述方法對應的進程間同步過程還包括當進程間異常同步時,對應操作,
1)進程1、進程2初始化鎖;
2)進程1先于進程2加鎖,并持有鎖,進程2后于進程1加鎖,進入阻塞等待狀態;
3)進程1持有鎖期間異常退出,內核清理進程1的鎖,由進程2取得鎖并持有;
4)進程2處理完事務解鎖。
10.根據權利要求4所述適用于Linux容器應用的多進程同步方法,其特征在于:
所述信號值初始值為1,所述T1單位為毫秒,T2單位為納秒。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于寧波三星醫療電氣股份有限公司,未經寧波三星醫療電氣股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110598729.3/1.html,轉載請聲明來源鉆瓜專利網。





