[發(fā)明專利]一種死鎖檢測方法及裝置在審
| 申請?zhí)枺?/td> | 201310732689.2 | 申請日: | 2013-12-26 |
| 公開(公告)號: | CN103761182A | 公開(公告)日: | 2014-04-30 |
| 發(fā)明(設(shè)計(jì))人: | 陳凱 | 申請(專利權(quán))人: | 上海華為技術(shù)有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F9/46 |
| 代理公司: | 深圳市深佳知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 44285 | 代理人: | 胡麗萍 |
| 地址: | 200121 *** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 死鎖 檢測 方法 裝置 | ||
1.一種死鎖檢測裝置,其特征在于,包括:
儲存單元,用于儲存應(yīng)用程序的資源鎖的使用信息,所述使用信息中包括資源鎖的占用信息和/或等待信息,及所述資源鎖的時(shí)間信息;
信息獲取單元,用于如果所述儲存單元中儲存的資源鎖是互斥鎖,且所述資源鎖的操作時(shí)間大于或等于預(yù)置時(shí)間,則獲取所述資源鎖的占用信息和/或等待信息;所述資源鎖的操作時(shí)間是根據(jù)所述資源鎖的時(shí)間信息得到的;
鎖判斷單元,用于根據(jù)所述信息獲取單元獲取的占用信息和/或等待信息判斷所述資源鎖是否為死鎖;
死鎖信息輸出單元,用于根據(jù)所述鎖判斷單元的判斷結(jié)果,輸出所述資源鎖為死鎖的信息。
2.如權(quán)利要求1所述的裝置,其特征在于,還包括:
信息記錄單元,用于當(dāng)應(yīng)用程序的線程/進(jìn)程操作所述資源鎖時(shí),將操作的所述資源鎖的使用信息記錄到所述儲存單元中。
3.如權(quán)利要求2所述的裝置,其特征在于,所述信息記錄單元,具體包括:
等待記錄單元,用于如果應(yīng)用程序的線程/進(jìn)程申請所述資源鎖對應(yīng)資源時(shí),將等待所述資源鎖的線程/進(jìn)程的信息和等待時(shí)間記錄到所述儲存單元中;
占用記錄單元,用于如果申請所述資源鎖對應(yīng)資源成功時(shí),刪除所述儲存單元中等待所述資源鎖的線程/進(jìn)程的信息和等待時(shí)間,并將占用所述資源鎖的線程/進(jìn)程的信息和占用時(shí)間記錄到所述儲存單元中;
釋放記錄單元,用于如果釋放所述資源鎖對應(yīng)資源時(shí),刪除所述儲存單元中占用所述資源鎖的線程/進(jìn)程的信息和占用時(shí)間。
4.如權(quán)利要求2所述的裝置,其特征在于,還包括:
調(diào)用單元,用于調(diào)用系統(tǒng)通用庫中的鎖操作函數(shù),對所述資源鎖對應(yīng)資源進(jìn)行操作。
5.如權(quán)利要求1至4任一項(xiàng)所述的裝置,其特征在于,所述鎖判斷單元具體包括如下至少一個(gè)判斷單元:第一判斷單元、第二判斷單元、第三判斷單元和第四判斷單元,其中:
第一判斷單元,用于如果第一線程/進(jìn)程占用第二線程/進(jìn)程所等待的資源鎖,且所述第二線程/進(jìn)程占用所述第一線程/進(jìn)程占用的資源鎖,則確定第一線程/進(jìn)程和第二線程/進(jìn)程占用的資源鎖為死鎖;
第二判斷單元,用于如果所述第一線程/進(jìn)程占用執(zhí)行某項(xiàng)操作的部分資源鎖,所述第二線程/進(jìn)程占用執(zhí)行所述某項(xiàng)操作的另一部分資源鎖,則確定所述部分資源鎖和所述另一部分資源鎖為死鎖;
第三判斷單元,用于如果第一線程/進(jìn)程等待第二線程/進(jìn)程所占用的資源鎖,第二線程/進(jìn)程等待第三線程/進(jìn)程所占用的資源鎖,第三線程/進(jìn)程等待第一線程/進(jìn)程所占用的資源鎖,則確定所述第一線程/進(jìn)程、第二線程/進(jìn)程和第三線程/進(jìn)程所占用的資源鎖為死鎖;
第四判斷單元,用于如果第一線程/進(jìn)程占用某一資源鎖的時(shí)間超過預(yù)置的占用時(shí)間,則確定所述第一線程/進(jìn)程的占用的資源鎖為死鎖。
6.如權(quán)利要求1至4任一項(xiàng)所述的裝置,其特征在于,還包括:
釋放單元,用于如果所述死鎖對應(yīng)的線程/進(jìn)程退出時(shí),釋放所述死鎖對應(yīng)的資源。
7.一種死鎖檢測方法,其特征在于,包括:
如果死鎖檢測裝置中儲存的資源鎖是互斥鎖,且所述資源鎖的操作時(shí)間大于或等于預(yù)置時(shí)間,則獲取所述資源鎖的占用信息和/或等待信息;
根據(jù)所述獲取的占用信息和/或等待信息判斷所述資源鎖是否為死鎖;
當(dāng)判斷所述資源鎖為死鎖時(shí),輸出所述資源鎖為死鎖的信息。
8.如權(quán)利要求7所述的方法,其特征在于,所述獲取所述資源鎖的占用信息和/或等待信息之前,還包括:
當(dāng)應(yīng)用程序的線程/進(jìn)程操作所述資源鎖時(shí),記錄操作的所述資源鎖的使用信息,所述使用信息中包括占用信息和/或等待信息,及資源鎖的時(shí)間信息;
所述資源鎖的操作時(shí)間是根據(jù)所述資源鎖的時(shí)間信息確定的。
9.如權(quán)利要求8所述的方法,其特征在于,所述記錄操作的所述資源鎖的使用信息,具體包括:
如果應(yīng)用程序的線程/進(jìn)程申請所述資源鎖對應(yīng)資源時(shí),記錄等待所述資源鎖的線程/進(jìn)程的信息和等待時(shí)間;
如果申請所述資源鎖對應(yīng)資源成功時(shí),刪除等待所述資源鎖的線程/進(jìn)程的信息和等待時(shí)間,并記錄占用所述資源鎖的線程/進(jìn)程的信息和占用時(shí)間;
如果所述釋放所述資源鎖對應(yīng)資源時(shí),刪除占用所述資源鎖的線程/進(jìn)程的信息和占用時(shí)間。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海華為技術(shù)有限公司,未經(jīng)上海華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310732689.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種松茸的保鮮方法
- 下一篇:一種基于液相分散的二維MoS2納米片的制備方法
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測;錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測試作故障硬件的檢測或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測試或調(diào)試防止錯(cuò)誤





