[发明专利]用于处理与锁定相关的不一致的技术有效
申请号: | 200680020071.1 | 申请日: | 2006-06-09 |
公开(公告)号: | CN101189581A | 公开(公告)日: | 2008-05-28 |
发明(设计)人: | 威尔逊·外·顺·禅;安杰洛·普鲁西诺;斯特凡·勒施;迈克尔·佐尔;托尔加·于雷克;尤金·霍 | 申请(专利权)人: | 甲骨文国际公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52 |
代理公司: | 北京律盟知识产权代理有限责任公司 | 代理人: | 刘国伟 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 处理 锁定 相关 不一致 技术 | ||
技术领域
本发明涉及锁定管理,且更具体地说涉及处理多节点系统中的与锁定相关的不一致。
背景技术
在计算机程序的执行期间,计算机使用例如存储器、调制解调器和打印机等资源。这些资源中的许多仅由任何给定计算机程序周期性地地使用。例如,相对于使用字处理应用程序来创建文档的时间量,字处理应用程序要求打印机打印文档的时间量通常很少。如果存取打印机的唯一方法只是单一的字处理应用程序,则打印机将在多数时间内处于闲置状态。
为充分利用资源,已经开发出其中运行于许多计算机装置或“节点”上的进程可以共享资源的计算机网络。因此,用户可购买可以连接到具有许多计算机的网络的单个打印机,而不是必须为每台计算机均购买一台打印机。所述网络上的每台计算机中的进程只有在所述进程需要打印机时才存取打印机。
如上所述,尽管资源可以共享,但许多资源在任何给定时间均不可由多于一个进程使用。例如,多数打印机不能一次打印多于一个文档。其他资源(例如存储媒体的数据块或存储在存储媒体上的表格)可由多个进程以某些方式(例如读取)同时存取,但由仅一个进程以其他方式(例如写入)一次存取。因此,已经开发出控制对资源的存取的机构。
一个这种机构称为锁定。锁定是指示已向特定进程授予关于所述资源的某些权利的数据结构。存在许多类型的锁定。某些类型的锁定可由许多进程共享,而其他类型的锁定则防止对相同资源授权任何其他锁定。
在进程可在资源上执行操作之前,要求所述进程获得向所述进程授予在所述资源上执行所需操作的权利的锁定。为获得锁定,进程将对锁定的请求传输到锁定管理器。锁定管理器是负责授权、排队及记录一个或多个资源上的锁定的进程。为管理资源在网络系统中的使用,将于在所述网络中的一个或多个节点上执行锁定管理器。正在执行管理对特定资源的存取的锁定管理器的节点称为所述资源的“主节点”(或简称“主机”)。
根据一个现有技术实施方案,锁定管理器实施两种类型的对象:资源对象和锁定。资源对象是与实际资源相对应的数据结构。使用锁定管理器的应用程序在实际资源和资源对象之间建立映射。每个资源对象均具有两个队列:已授权队列和转换队列。已授权队列是已授权的锁定的无序列表。转换队列是已提出请求但尚未授权的锁定的偏序列表。通常,对锁定的请求实际上是转换请求,其中持有锁定的进程正请求将其持有的锁定从一种锁定模式转换为不同的锁定模式。
锁定是识别进程和锁定模式的数据结构。锁定管理器将锁定附加到资源对象的已授权队列以指示已向所述锁定中识别的进程授权对应于所述锁定所附加的资源对象的资源上的锁定中所指示的锁定类型。
图1是图解说明典型的锁定管理器106的方块图。锁定管理器106是经配置以管理存储于存储器108中的资源对象100的进程。所述资源对象包含已授权队列102和转换队列104。锁定管理器106已将三个锁定110、112和114附加到已授权队列102,且将一个转换请求130附加到转换队列104。
所有的锁定和转换请求均具有进程ID部分和锁定模式部分。锁定110的进程ID部分116指示进程PROC_1拥有锁定110,且锁定110的锁定模式部分118指示锁定110是排他锁定。锁定112的进程ID部分120指示锁定112由进程PROC 2拥有,且锁定112的锁定模式部分122指示锁定112是NULL模式锁定。锁定114的进程ID部分124指示锁定114由进程PROC_3拥有,且锁定114的锁定模式部分126指示锁定114是NULL锁定。转换请求130的进程ID部分132指示转换请求130与进程PROC_4相关联,且转换请求130的锁定模式部分136指示PROC_4当前持有对所述资源的NULL模式锁定。除了锁定模式部分136以外,转换请求130还具有指示PROC_4正请求排他模式锁定的已请求模式部分134。
锁定管理器106已将锁定110、112和114附加到已授权队列102,指示PROC_1当前具有对应于资源对象110的资源的唯一所有权。锁定管理器106已将转换请求130附加到转换队列104上,指示PROC_4已提出请求但尚未被授权对与资源对象100相关联的资源的排他模式锁定。
资源对象的转换队列是持有所有未完成(未授权)锁定请求的偏序列表。如果任何未完成锁定请求尚未被授权,则所述未授权锁定请求的一者将位于所述转换队列的“头部”。即使当前的已授权锁定不阻止锁定管理器授权特定锁定请求,如果所述转换队列非空,则所述锁定请求仍将放置在所述转换队列上。这种策略可阻止“活锁”,其中系统中的一个进程不能继续进行而其他进程则可以。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于甲骨文国际公司,未经甲骨文国际公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680020071.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:液晶显示器及其驱动方法
- 下一篇:医用蒸汽清洗机