发明名称 使用网络和基于碟片上的方案的混合锁定
摘要 本发明涉及使用网络和基于碟片上的方案的混合锁定。公开了一种由节点获取在多个互连节点的系统中的共享资源上的锁的方法。竞争共享资源上的锁的每个节点维护节点当前拥有的锁的列表。在共享存储上维护锁元数据,该共享存储可以被竞争共享资源上的锁的所有节点访问。在对应于每个节点的共享资源上维护心跳区,这样节点可以注册其活性。在共享存储的锁元数据中维护锁状态。锁状态可以指示:锁被排他持有、锁空闲或锁处于管理模式。如果锁是以管理模式被持有的,则可以不使用诸如SCSI保留的互斥原语,将锁的所有权转移给另一节点。
申请公布号 CN101800763A 申请公布日期 2010.08.11
申请号 CN200910254094.4 申请日期 2009.12.18
申请人 威睿公司 发明人 马扬克·拉瓦特;李金远;穆拉利·维莱阿努尔;丹尼尔·J·斯凯尔斯
分类号 H04L29/08(2006.01)I;H04L12/28(2006.01)I;G06F17/30(2006.01)I 主分类号 H04L29/08(2006.01)I
代理机构 中原信达知识产权代理有限责任公司 11219 代理人 张焕生;安翔
主权项 一种由节点获取在多个互连节点的系统中的共享资源上的锁的方法,所述方法包括:(a)探查所述节点的本地锁元数据,以确定在所述本地锁元数据中是否存在所述锁的锁元数据,其中所述锁元数据包括所述锁的标识和锁状态;(b)如果在所述本地锁元数据中不存在所述锁元数据,则执行步骤(i)到(iv),(i)从共享存储中读取所述锁的共享锁元数据,所述读取包括识别所述锁的当前拥有者和所述锁的当前状态;(ii)探查所述锁的所述当前拥有者的心跳区,以确定所述当前拥有者是否活着,其中如果所述当前拥有者不是活着的,则等待锁租用时间流逝,然后获取所述锁,并更新所述共享锁元数据以指示所述锁现在由所述节点拥有;(iii)如果所述锁的所述当前状态指示所述当前拥有者正以排他模式持有所述锁,则向所述节点返回消息以通知所述锁不是空闲的;(iv)如果所述锁的所述当前状态指示所述当前拥有者正以管理模式持有所述锁,则向所述当前拥有者发送释放所述锁的请求,其中如果所述当前拥有者还没有将所述锁释放给另一请求节点,则将所述锁授予给所述节点而不在所述共享资源上执行互斥原语操作,并且更新所述共享锁元数据以指示新的锁所有权和锁状态;以及(c)如果在所述本地锁元数据中存在所述节点的所述锁元数据,则探查在所述本地锁元数据中的所述锁的所述锁状态,如果在所述本地锁元数据中的所述锁的所述锁状态指示所述锁正以管理模式被拥有,则改变所述本地锁元数据中的所述锁的所述锁状态以指示所述节点对所述锁的排他使用,并更新所述共享锁元数据以指示所述锁正以排他模式被所述节点拥有,其中所述管理模式意指所述锁正由所述节点拥有,但是所述锁未被所述节点使用。
地址 美国加利福尼亚州