[發明專利]資源的分層鎖定有效
| 申請號: | 201310491869.6 | 申請日: | 2013-10-18 |
| 公開(公告)號: | CN103778003A | 公開(公告)日: | 2014-05-07 |
| 發明(設計)人: | S.Z.雅各布斯;D.A.拉森 | 申請(專利權)人: | 國際商業機器公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 北京市柳沈律師事務所 11105 | 代理人: | 周少杰 |
| 地址: | 美國紐*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 資源 分層 鎖定 | ||
1.一種方法,包含:
從第一線程接收指定資源的鎖定命令;
如果節點鎖中的層狀態指示對全局數據節點鎖當前被擁有,則將第一線程的標識符加入節點鎖中的節點等待者列表中,以及如果第一線程的鎖定等待指示符指示第一線程對全局數據擁有節點鎖,則等待到節點鎖中的下一層等待指示符指示任何線程對資源擁有全局鎖,然后將對于該鎖定命令的成功完成狀態返回到第一線程;
如果層狀態指示沒有線程對全局數據持有節點鎖,則將層狀態改變成指示節點鎖被擁有,以及如果全局數據中的全局等待者和持有者列表是空的,則將第一線程在上面執行的第一節點的標識符加入全局等待者和持有者列表中,并且將對于該鎖定命令的成功完成狀態返回到第一線程;
如果層狀態指示沒有線程對全局數據持有節點鎖,則將層狀態改變成指示節點鎖被擁有,以及如果第一線程在上面執行的第一節點的標識符在全局等待者和持有者列表中,則將第一線程在上面執行的第一節點的標識符加入全局數據中的全局待定等待者列表中,并且將對于該鎖定命令的成功完成狀態返回到第一線程;以及
如果層狀態指示沒有線程對全局數據持有節點鎖,則將層狀態改變成指示節點鎖被擁有,以及如果第一線程在上面執行的第一節點的標識符未在全局等待者和持有者列表中,則將第一線程在上面執行的第一節點的標識符加入全局等待者和持有者列表中,并且將對于該鎖定命令的成功完成狀態返回到第一線程。
2.如權利要求1所述的方法,進一步包含:
如果層狀態指示沒有線程對全局數據擁有節點鎖,則將層狀態改變成指示節點鎖被擁有,以及如果全局等待者和持有者列表不是空的,鎖定命令是試鎖嘗試命令,以及節點等待者列表是空的,則將節點鎖中的層狀態改變成指示沒有線程擁有節點鎖,并且將對于該鎖定命令的失敗完成狀態返回到第一線程。
3.如權利要求2所述的方法,進一步包含:
如果層狀態指示沒有線程對全局數據擁有節點鎖,則將層狀態改變成指示節點鎖被擁有,以及如果全局等待者和持有者列表不是空的,鎖定命令是試鎖嘗試命令,以及節點等待者列表不是空的,則確定線程順序中移交節點鎖的下一個有序節點線程,從節點等待者列表中除去下一個有序節點線程的標識符,將下一個有序節點線程的鎖定等待指示符設置成指示下一個有序節點線程從發出試鎖嘗試命令的第一線程獲得了節點鎖,并且將對于該鎖定命令的失敗完成狀態返回到第一線程。
4.如權利要求2所述的方法,進一步包含:
從第一線程接收指定資源的解鎖命令;以及
如果節點等待者列表是空的,則將層狀態改變成指示節點鎖未被持有,從全局等待者和持有者列表中除去第一線程的標識符,以及如果全局待定等待者列表和全局等待者和持有者列表是空的,則將對于該解鎖命令的成功完成狀態返回到第一線程。
5.如權利要求4所述的方法,進一步包含:
如果全局待定等待者列表不是空的,則將節點的標識符從全局待定等待者列表移動到全局等待者和持有者列表中;
如果在全局等待者和持有者列表中識別出除了第一節點之外的任何其他節點,則確定移交全局鎖的下一個有序節點,在接收全局鎖的下一個有序節點上設置節點下一層等待指示符,以指示下一個有序節點擁有全局鎖,并且將對于該解鎖命令的成功完成狀態返回到第一線程;以及
如果在全局等待者和持有者列表中只識別出第一線程在上面執行的第一節點,則清除全局待定等待者列表。
6.如權利要求4所述的方法,進一步包含:
如果節點等待者列表不是空的,則確定移交節點鎖的下一個有序節點線程,從節點等待者列表中除去下一個有序節點線程,以及如果下一個有序節點線程在線程順序中在第一線程之后,則在下一個有序節點線程中設置鎖定等待指示符,以指示下一個有序節點線程擁有節點鎖和全局鎖,并且將對于該解鎖命令的成功完成狀態返回到第一線程;以及
如果下一個有序節點線程在線程順序中在第一線程之前,則在下一個有序節點線程中設置鎖定等待指示符,以指示下一個有序節點線程擁有節點鎖,以及如果全局待定等待者列表是空的,則為第一線程設置下一層等待指示符,以指示第一線程擁有全局鎖,并且將對于該解鎖命令的成功完成狀態返回到第一線程。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于國際商業機器公司,未經國際商業機器公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310491869.6/1.html,轉載請聲明來源鉆瓜專利網。





