CN1610884A - 对于大数据结构的表目锁定 - Google Patents

对于大数据结构的表目锁定 Download PDF

Info

Publication number
CN1610884A
CN1610884A CNA028224086A CN02822408A CN1610884A CN 1610884 A CN1610884 A CN 1610884A CN A028224086 A CNA028224086 A CN A028224086A CN 02822408 A CN02822408 A CN 02822408A CN 1610884 A CN1610884 A CN 1610884A
Authority
CN
China
Prior art keywords
value
lock
entry
hash
hashed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA028224086A
Other languages
English (en)
Other versions
CN1266602C (zh
Inventor
J·胡格布鲁格
P·斯特拉维斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP BV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1610884A publication Critical patent/CN1610884A/zh
Application granted granted Critical
Publication of CN1266602C publication Critical patent/CN1266602C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明根据这样一种思想,即对于具有N个表目的大数据结构,通过在一个代表一个表目的值上执行散列函数,使其成为1到M之间的一个被散列值,用于相应于所述表目的锁的存储空间可以被节省。这个被散列的值被用于索引M个锁的表。M值典型地比N值小很多,从而减少存储空间需求。如果M被选择足够大并且一种好的散列函数被选择,则碰撞问题将很小。另外,当第二个表目的被散列值等于第一个表目的被散列值时,与死锁有关的问题出现,通过当第二个表目的被散列值小于第一个表目的被散列值时,通过交换所述第一和第二个表目的所述散列值,所述问题可以得到解决。

Description

对于大数据结构的表目锁定
本发明涉及一种使用递归锁来锁定表目的方法、一种使用非递归锁来锁定表目的方法以及各自相应的设备、一种计算机系统和一种计算机程序产品。
为了提高操作效率,一个数据结构可以被需要相同的信息来执行各种任务的多个进程共享。同步访问一个被共享的数据结构对于具有多处理器的计算机操作都是一个巨大的挑战,并且无论何时多处理器试图更新数据结构中的信息,这一点特别重要。在没有有效的同步化的情况下,包括被共享的数据结构的系统性能被严重地降低。当一个处理器执行数据结构的更新时,通常对于其它的处理器,全部数据结构将是不可访问的或者“被锁定的”。换句话说,在被包括在所述结构中的信息可以被访问或更新之前,非更新处理器必须等到所述数据结构被解锁。
因此,同时执行多个进程的数据处理系统必须具有同步访问被多个处理器共享的公用资源的装置。典型地,数据处理系统通过使用忙等待策略已经提供了这种到被共享的资源的同步访问。在忙等待中,每个处理器请求资源并且等待空闲,直到结果是可用的。当所述结果终于变得可用时,一个空闲进程获取对于所述资源的访问。这个方法提供足够的同步,但是存在处理器等待资源时必须空闲的缺点。
一个作为数据处理资源的数据结构具有单一的存储地址,包括用于保持值的值字段和用于在所述存储地址上指示值字段的锁定状态的锁定字段。当这个锁定字段指示值字段被锁定时,只有锁定值字段的进程可以获取对于所述值字段的访问。当所述锁定状态被解锁时,任何进程都可以获取到所述资源的访问。所述值字段可以保持数据或者可替代地它可以保持一个到锁定或解锁请求的延迟表的指针。这两种值共用所述值字段以便使效率最优化。因为它们将决不在相同的时间被存储在所述值字段中,所以它们可以共享相同的值字段。两种值的性质使它们本质上相互排斥。可替代地,所述指针不与数据共享值字段而是被存储在与值字段不同的单独的字段中。
在一个具有需要被从多个进程访问的大量表目的大数据结构中,在所述数据结构中的每个表目具有一个在所述进程可以独占地使用该表目之前该进程必须获取的锁。当所述数据结构的表目已经被所述进程使用时,它必须再次释放该锁,这样其它的进程可以访问所述表目。如果该进程必须在多个表目上执行一些操作,则该进程通常将必须获取用于执行所述操作的全部锁并且其后释放所述锁。所述锁的获取必须以固定的顺序进行,以便避免死锁。
所述锁可以是代表被锁定的或者未被锁定的状态的布尔变量,但是常常也包括被所述锁阻塞的其它进程的表。N个表目的数据结构需要N个锁。所述锁可以是该数据结构的一部分或者可以被存储在一个单独的数据结构中。一个锁表是被称作锁表表目的对象序列。当该表被创立时,锁表表目的数量被确定。从0到锁表表目的数量减1对于锁表表目进行编号。
US 5,339,427涉及用于支持被在具有访问被共享的存储器的进程上执行的多个共享锁管理使用的分布式锁定协议的锁管理装置。锁定在锁管理器中被共享的资源的请求首先根据一个局部散列表被检查,随后如果必要则被转发到系统锁管理装置SLM。所述SLM为在被共享的数据结构中表目的锁定和恢复提供接口。一种SLM的控制结构由一个散列表和来自代表被串行化资源的状态的散列表表目的控制块链组成。SLM把锁表表目和每个散列表表目联系起来。散列表值指示在散列表中哪个表目将被用于管理特定资源的串行化。然而,通过把所述锁插入链中,所述锁被插入一个开放的散列表。根据散列表值确定或决定使用哪个链。
散列是一种已知的用于把一串字符变换成代表原始字符串的通常较短的固定长度值或关键字的技术。因为使用所述较短的被散列的关键字来发现表目比用原始值来发现表目快,所以散列被用于在数据库中索引和检索表目。散列函数被用于索引原始值或关键字并且随后每次与所述值或关键字有关的数据被检索时都被使用。因此,散列总是一种单向操作。一种好的散列函数不应该从两个不同的输入产生相同的散列值。如果产生了,则这被认为是一种碰撞。然而,一种提供非常低的碰撞危险的散列函数被认为是可以接受的。
本发明的一个目的是改进对于从多个进程被访问的大数据源的表目锁定。
通过一种使用根据权利要求1的递归锁来锁定表目的方法;一种使用根据权利要求2的非递归锁来锁定表目的方法以及分别根据权利要求4和5的相应的设备,从而达到上述目的。
本发明根据这样一种思想,即对于具有N个表目的大数据结构,通过在代表一个表目的值上执行散列函数,使其成为被散列值1到M,从而用于相应于所述表目的锁的存储空间可以被节省。这个被散列值被用于索引M个锁的表。M值典型地比N值小很多,从而减少存储空间需求。如果M被选择足够大并且一种好的散列函数被选择,则碰撞问题将很小。另外,通过当第二个表目的被散列值小于第一个表目的被散列值时,交换所述第一和第二个表目的所述被散列值,可以解决与当第二个表目的被散列值等于第一个表目的被散列值时出现的死锁有关的问题。
当递归锁正被使用时,第一个进程获取的是相应于所述第一个被散列值的第一个锁并且第二个进程获取的是相应于所述第二个被散列值的第二个锁。在已经分别获取所述第一个和第二个锁之后,所述第一个和第二个进程被授权独占访问在所述数据结构中的所述第一个和第二个表目。所述第一个和第二个进程执行必要的处理并且其后再次释放所述第一个和第二个锁,这样其它进程可以访问所述表目。
当非递归锁正被使用时,表目的锁定将十分类似于在递归锁的情况被执行,但是当第一个被散列值不等于第二个被散列值时,第二个进程将只能获取相应于第二个表目的第二个锁。而且,当第一个被散列值不等于第二个被散列值时,第二个进程将只能释放第二个锁。
在本发明的一个优选实施方案中,值M与同时访问所述数据结构的进程的数量和所述进程平均需要锁定以便执行其处理的表目的数量的乘积成正比。
根据本发明,根据权利要求6的一种计算机系统也被提供。
而且,本发明提供一种根据权利要求7的计算机程序产品。
现在参考附图将更详细地解释本发明,其中:
图1显示用于锁定数据结构中的表目的设备的框图。
在图1中,用于锁定大数据结构中的表目的设备的框图被显示。所述设备包括散列装置10、比较装置20、交换装置30、第一个锁获取装置40、第二个锁获取装置50、访问许可装置60和锁释放装置70。
所述散列装置10接收代表在所述数据结构中的表目的值作为输入信号并且输出所述输入信号的被散列值到所述比较装置20和所述交换装置30。所述比较装置20输出所述输入信号的比较结果到所述交换装置30。所述交换装置30接收来自所述比较装置20的比较结果以及来自所述散列装置10的输出信号,并且输出被散列值到所述第一个锁获取装置40和所述第二个锁获取装置50。所述第一个和第二个锁获取装置40、50被分别连接到所述第一个和第二个进程,并且被连接到所述访问许可装置60,后者进而又连接到所述第一个和第二个进程以及锁释放装置70。所述锁释放装置70也被连接到所述第一个进程和所述第二个进程。
根据本发明的第一个实施方案,使用可以被相同的进程锁定多次的递归锁。所述散列装置10接收代表所述第一个表目e1的值和代表第二个表目e2的值作为输入信号。所述散列装置10在被接收的表示所述第一个和第二个表目的值上执行散列函数,使其成为在1和M之间的第一个和第二个被散列值i、j。所述被散列值被用于索引M个锁的表。所述比较装置20接收所述第一个和第二个被散列值i、j,比较所述值,并且输出比较结果。所述交换装置30接收来自所述比较装置20的比较结果以及所述第一个和第二个被散列值i、j,并且如果根据来自所述比较装置20的比较结果,所述第二个值j小于所述第一个值i,则所述交换装置30交换所述第一个和第二个被散列值i、j。当所述第二个值j小于所述第一个值i时,所述第一个和第二个散列值的交换被执行,以便当所述第一个被散列值等于所述第二个被散列值时避免死锁。其后,所述交换装置30输出所述第一个被散列值i到所述第一个锁获取装置40并且输出所述第二个被散列值j到所述第二个锁获取装置50。
所述第一个锁获取装置40使第一个进程能够获取用于相应于所述第一个被散列值i的所述第一个表目e1的第一个锁lock(i)。所述第二个锁获取装置50使第二个进程能够获取用于相应于所述第二个被散列值j的所述第二个表目e2的第二个锁lock(j)。所述访问许可装置60根据被获取的第一个锁lock(i)授权所述第一个进程独占访问所述第一个表目e1并且根据被获取的第二个锁lock(j)授权所述第二个进程独占访问所述第二个表目e2。
当所述第一个和第二个进程已经获取所述第一个和第二个lock(i)、lock(j)时,所述第一个和第二个进程可以在所述数据结构中的第一个和第二个表目e1、e2上执行被要求的处理。当所述第一个和第二个进程已经在所述第一个和第二个表目e1、e2上执行所述处理时,所述第一个和第二个进程被要求释放所述第一个和第二个表目e1、e2的所述第一个和第二个锁lock(i)、lock(j)。所述锁释放装置70使所述第一个和第二个进程能够释放所述第一个和第二个表目e1、e2上的所述第一个和第二个锁lock(i)、lock(j)。
所述第一个和第二个表目现在可以自由地被其它的进程独占访问。
根据本发明的第二个实施方案,使用不能被相同的进程多次锁定的非递归锁。所述第二个锁获取装置50还被连接到所述比较装置20。所述锁释放装置70还被连接到所述比较装置20;并且所述散列装置10接收代表所述第一个表目e1的值和代表第二个表目e2的值作为输入信号。所述散列装置10在所述被接收的代表所述第一个和第二个表目e1、e2的值上执行散列函数,使其成为在1和M之间的第一个和第二个被散列值i、j。所述被散列值被用于索引M个锁的表。所述比较装置20接收所述第一个和第二个被散列值i、j,比较它们的值,并且输出比较结果。所述交换装置30接收来自所述比较装置20的比较结果以及所述第一个和第二个被散列值i、j,并且如果根据来自所述比较装置20的比较结果,所述第二个值j小于所述第一个值i,则交换装置30交换所述第一个和第二个被散列值i、j。当所述第二个值j小于所述第一个值i时,所述第一个和第二个散列值的交换被执行,以便当所述第一个被散列值等于所述第二个被散列值时避免死锁。随后,所述交换装置30输出所述第一个被散列值i到所述第一个锁获取装置40并且输出所述第二个被散列值j到所述第二个锁获取装置50。
所述第一个锁获取装置40使第一个进程能够获取用于相应于所述第一个被散列值i的所述第一个表目e1的第一个锁lock(i)。当所述第二个被散列值j不等于所述第一个被散列值i时,所述第二个锁获取装置50使第二个进程能够获取用于相应于所述第二个被散列值j的所述第二个表目e2的第二个锁lock(j)。所述访问许可装置60根据被获取的第一个锁lock(i)授权所述第一个进程独占访问所述第一个表目e1并且根据被获取的第二个锁lock(j)授权所述第二个进程独占访问所述第二个表目e2。
当所述第一个和第二个进程已经获取所述第一个和第二个lock(i)、lock(j)时,所述第一个和第二个进程可以在所述数据结构中的第一个和第二个表目e1、e2上执行被要求的处理。当所述第一个和第二个进程已经在所述第一个和第二个表目e1、e2上执行它们的处理时,所述第一个和第二个进程被要求释放所述第一个和第二个表目e1、e2的所述第一个和第二个锁。如果如被比较装置20确定的所述第二个被散列值j不等于所述第一个被散列值i,则所述锁释放装置70使所述第一个进程能够释放在所述第一个表目e1上的所述第一个锁lock(i)、并且使所述第二个进程能够释放在所述第二个表目e2的所述第二个锁lock(j)。
所述第一个和第二个表目e1、e2现在自由地被其它进程独占地访问。
优选地,值M与同时访问所述数据结构的进程的数量和所述进程平均需要锁定以便执行其处理的表目的数量的乘积成正比。
通过应用本发明的原理,使得节省用于锁的存储器成为可能,但是并行性可能被减少,这是因为到被散列到相同值的不同的表目的访问被串行化。然而,通过使用一种好的散列函数并且选择足够大的M,并行性的减少将很小。
所述用于锁定表目的设备在一种能够并行处理并且能够处理多个进程的计算机系统中被优选地使用。
尽管上面只描述了一种用于两个表目的设备,但是对于本领域的技术人员显而易见的是,根据本发明的原理,具有多于两个表目的设备也可以被安排。

Claims (7)

1.一种用于特别在从多个进程可访问的大数据结构中锁定表目的方法,其中递归锁被使用,该方法包括步骤:
将第一个表目(e1)散列成为在1和M之间的第一个值(i),
将第二个表目(e2)散列成为在1和M之间的第二个值(j);
如果所述第二个值(j)小于所述第一个值(i),则交换所述第一个和第二个被散列值(i;j);
通过第一个进程获取相应于被散列的第一个值(i)的第一个锁(lock(i));
通过第二个进程获取相应于被散列的第二个值(j)的第二个锁(lock(j));
其中根据被散列的第一个值(i)来授权所述第一个进程独占访问所述第一个表目(e1);并且
其中根据被散列的第二个值(j)来授权所述第二个进程独占访问所述第二个表目(e2);
其中在已经在所述第一个表目(e1)上执行处理之后,使得所述第一个进程能够释放所述第一个锁(lock(i)),并且
其中在已经在所述第二个表目(e2)上执行处理之后,使得所述第二个进程能够释放所述第二个锁(lock(j))。
2.一种用于特别在从多个进程可访问的大数据结构中锁定表目的方法,其中非递归锁被使用,该方法包括步骤:
将第一个表目(e1)散列成为在1和M之间的第一个值(i),
将第二个表目(e2)散列成为在1和M之间的第二个值(j);
如果所述第二个值(j)小于所述第一个值(i),则交换所述第一个和第二个值(i;j);
通过第一个进程获取相应于被散列的第一个值(i)的第一个锁(lock(i));
如果所述第一个被散列值(i)不等于所述第二个被散列值,则通过第二个进程获取相应于被散列的第二个值的第二个锁(lock(j));
其中根据被散列的第一个值(i)来授权所述第一个进程独占访问所述第一个表目(e1);并且
其中根据被散列的第二个值(j)来授权所述第二个进程独占访问所述第二个表目(e2);
其中在已经在所述第一个表目(e1)上执行处理之后,使得所述第一个进程能够释放所述第一个锁(lock(i)),并且
其中如果所述第一个被散列值(i)不等于所述第二个值(j),则在已经在所述第二个表目(e2)上执行处理之后,使得所述第二个进程能够释放所述第二个锁(lock(j))。
3.如权利要求1或2所述的方法,其中
值M与同时访问所述数据结构的进程的数量和所述进程平均需要锁定以便执行其处理的表目的数量的乘积成正比。
4.一种用于特别在从多个进程可访问的大数据结构中锁定表目的设备,其中递归锁被使用,该设备包括:
散列装置(10),用于将第一个表目(e1)散列成为在1和M之间的第一个值(i)以及将第二个表目(e2)散列成为在1和M之间的第二个值(j);
比较装置(20),用于比较所述第一个和第二个被散列值(i;j);
交换装置(30),用于如果所述比较装置(20)已经确定所述第二个值(j)小于所述第一个值(i),则交换所述第一个和第二个被散列值(i;j);
第一个锁获取装置(40),用于使第一个进程能够获取相应于被散列的第一个值(i)的第一个锁(lock(i));
第二个锁获取装置(50),用于使第二个进程能够获取相应于被散列的第二个值(j)的第二个锁(lock(j));
访问许可装置(60),用于根据被散列的第一个值(i)来授权所述第一个进程独占访问所述第一个表目(e1),以及根据被散列的第二个值(j)来授权所述第二个进程独占访问所述第二个表目(e2);
锁释放装置(70),用于在已经在所述第一个表目(e1)上执行处理之后,使所述第一个进程能够释放所述第一个锁(lock(i)),以及在已经在所述第二个表目(e2)上执行处理之后,使所述第二个进程能够释放所述第二个锁(lock(j))。
5.一种用于特别在从多个进程可访问的大数据结构中锁定表目的设备,其中非递归锁被使用,该设备包括:
散列装置(10),用于将第一个表目(e1)散列成为在1和M之间的第一个值(i),以及将第二个表目(e2)散列成为在1和M之间的第二个值(j);
比较装置(20),用于比较所述第一个和第二个被散列值(i;j);
交换装置(30),用于如果所述比较装置(20)已经确定所述第二个值(j)小于所述第一个值(i),则交换所述第一个和第二个被散列值(i;j);
第一个锁获取装置(40),用于使第一个进程能够获取相应于被散列的第一个值(i)的第一个锁(lock(i));
第二个锁获取装置(50),用于如果所述比较装置(20)已经确定所述第一个被散列值(i)不等于所述第二个被散列值(j),则使第二个进程能够获取相应于被散列的第二个值(j)的第二个锁(lock(j));
访问许可装置(60),用于根据被散列的第一个值(i)来授权所述第一个进程独占访问所述第一个表目(e1),以及根据被散列的第二个值(j)来授权所述第二个进程独占访问所述第二个表目(e2);
锁释放装置(70),用于在已经在所述第一个表目(e1)上执行处理之后,使所述第一个进程能够释放所述第一个锁(lock(i)),以及如果所述比较装置(20)已经确定所述第一个被散列值(i)不等于所述第二个值(j),则在已经在所述第二个表目(e2)上执行处理之后,使所述第二个进程能够释放所述第二个锁(lock(j))。
6.一种用于并行处理包括N个表目的数据结构的计算机系统,包括:
一个根据权利要求4的使用递归锁的特别在从多个进程可访问的大数据结构中锁定表目的设备,和/或
一个根据权利要求5的使用非递归锁的特别在从多个进程可访问的大数据结构中锁定表目的设备。
7.一种计算机程序产品,包括用于使计算机执行如权利要求1、2或3所述的方法的步骤的计算机程序代码装置。
CNB028224086A 2001-11-13 2002-10-28 用于锁定表目的方法和设备及用于并行处理的计算机系统 Expired - Fee Related CN1266602C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01204330.3 2001-11-13
EP01204330 2001-11-13

Publications (2)

Publication Number Publication Date
CN1610884A true CN1610884A (zh) 2005-04-27
CN1266602C CN1266602C (zh) 2006-07-26

Family

ID=8181224

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028224086A Expired - Fee Related CN1266602C (zh) 2001-11-13 2002-10-28 用于锁定表目的方法和设备及用于并行处理的计算机系统

Country Status (6)

Country Link
US (1) US7051136B2 (zh)
EP (1) EP1449076A2 (zh)
JP (1) JP2005509944A (zh)
CN (1) CN1266602C (zh)
AU (1) AU2002339651A1 (zh)
WO (1) WO2003042816A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021036253A1 (zh) * 2019-08-30 2021-03-04 创新先进技术有限公司 在区块链中并发执行交易的方法和装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370048B2 (en) * 2005-05-27 2008-05-06 International Business Machines Corporation File storage method and apparatus
US7526623B1 (en) * 2006-09-28 2009-04-28 Emc Corporation Optimizing reclamation of data space
US8862639B1 (en) 2006-09-28 2014-10-14 Emc Corporation Locking allocated data space
US7756831B1 (en) * 2006-09-28 2010-07-13 Emc Corporation Cooperative locking between multiple independent owners of data space
US9454536B1 (en) 2006-09-28 2016-09-27 Emc Corporation Space compaction and defragmentation mechanisms in data space
US8533158B1 (en) 2006-09-28 2013-09-10 Emc Corporation Reclaiming data space by rewriting metadata
US7647466B1 (en) * 2006-09-28 2010-01-12 Emc Corporation Linear space allocation mechanisms in data space
US7660956B1 (en) * 2007-01-08 2010-02-09 Emc Corporation Save set bundling for staging
US7822927B1 (en) * 2007-05-14 2010-10-26 Emc Corporation Dynamically configurable reverse DNLC lookup
KR102206577B1 (ko) * 2014-04-30 2021-01-25 오라클 인터내셔날 코포레이션 트랜잭셔널 미들웨어 머신 환경에서 분산 트랜잭션 락을 제공하는 시스템 및 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4480304A (en) * 1980-10-06 1984-10-30 International Business Machines Corporation Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment
JPH01303527A (ja) * 1988-05-31 1989-12-07 Hitachi Ltd 共有資源の管理方法
US5339427A (en) * 1992-03-30 1994-08-16 International Business Machines Corporation Method and apparatus for distributed locking of shared data, employing a central coupling facility
US5737611A (en) * 1996-04-05 1998-04-07 Microsoft Corporation Methods for dynamically escalating locks on a shared resource
US6360220B1 (en) * 1998-08-04 2002-03-19 Microsoft Corporation Lock-free methods and systems for accessing and storing information in an indexed computer data structure having modifiable entries
US6529905B1 (en) * 2000-01-11 2003-03-04 Frontline Solutions, Inc. Method and system for allowing multiple users to edit a hierarchical data structure

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021036253A1 (zh) * 2019-08-30 2021-03-04 创新先进技术有限公司 在区块链中并发执行交易的方法和装置

Also Published As

Publication number Publication date
WO2003042816A3 (en) 2004-03-18
WO2003042816A2 (en) 2003-05-22
US20040267745A1 (en) 2004-12-30
EP1449076A2 (en) 2004-08-25
AU2002339651A1 (en) 2003-05-26
JP2005509944A (ja) 2005-04-14
US7051136B2 (en) 2006-05-23
CN1266602C (zh) 2006-07-26

Similar Documents

Publication Publication Date Title
US7124255B2 (en) Message based inter-process for high volume data
US7139855B2 (en) High performance synchronization of resource allocation in a logically-partitioned system
US10990628B2 (en) Systems and methods for performing a range query on a skiplist data structure
JP2543253B2 (ja) デツドロツクを検出して解決する方法及びフアイルを共有するデ―タ処理装置
US6965892B1 (en) Method, system and program products for concurrently accessing a global data repository by multithreaded clients
Yu et al. On coupling multi-systems through data sharing
US20080228691A1 (en) Concurrent extensible cuckoo hashing
CN1266602C (zh) 用于锁定表目的方法和设备及用于并行处理的计算机系统
EP1640875A2 (en) Method and system for multithread processing of spreadsheet chain calculations
JPH01303527A (ja) 共有資源の管理方法
CN1251076C (zh) 用来提高至少一个程序执行速度的基于计算机平台的系统及方法
US20110185360A1 (en) Multiprocessing transaction recovery manager
US20020156786A1 (en) Asynchronous database updates
US7991976B2 (en) Permanent pool memory management method and system
CN1399209A (zh) 一种并行处理分布式数据库的方法和装置
CN115438025A (zh) 数据处理方法及装置
US20020099716A1 (en) Technique and apparatus to process data
KR0152714B1 (ko) 다중 사용자 환경의 저장시스템에서 버퍼 잠금기법을 이용한 버퍼 관리방법
Thomasian Performance analysis of locking policies with limited wait depth
US6370528B1 (en) High speed method for flushing data buffers and updating database structure control information
US20080209140A1 (en) Method for Managing Memories of Digital Computing Devices
Ali OR parallel execution of Horn clause programs based on WAM and shared control information
Vee et al. Meeting challenges of container port operations for the next millennium
JPS63159949A (ja) フアイルのアクセス方法
Dubois et al. The run-time efficiency of parallel asynchronous algorithms

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: NXP CO., LTD.

Free format text: FORMER OWNER: KONINKLIJKE PHILIPS ELECTRONICS N.V.

Effective date: 20070907

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20070907

Address after: Holland Ian Deho Finn

Patentee after: Koninkl Philips Electronics NV

Address before: Holland Ian Deho Finn

Patentee before: Koninklijke Philips Electronics N.V.

ASS Succession or assignment of patent right

Owner name: CALLAHA XILE CO., LTD.

Free format text: FORMER OWNER: KONINKL PHILIPS ELECTRONICS NV

Effective date: 20120222

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120222

Address after: American Delaware

Patentee after: NXP BV

Address before: Holland Ian Deho Finn

Patentee before: Koninkl Philips Electronics NV

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20060726

Termination date: 20131028