CN1928837A - 使用状态跟踪来检测计算机系统中的错误的方法和系统 - Google Patents
使用状态跟踪来检测计算机系统中的错误的方法和系统 Download PDFInfo
- Publication number
- CN1928837A CN1928837A CNA2006101062458A CN200610106245A CN1928837A CN 1928837 A CN1928837 A CN 1928837A CN A2006101062458 A CNA2006101062458 A CN A2006101062458A CN 200610106245 A CN200610106245 A CN 200610106245A CN 1928837 A CN1928837 A CN 1928837A
- Authority
- CN
- China
- Prior art keywords
- project
- tcb
- control block
- task control
- processing unit
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Abstract
公开了一种用于检测计算机系统中的错误的方法和系统,所述计算机系统包括用于执行任务以便改变项目的处理单元。所述方法包括步骤:向处理单元分配任务控制块,并且使用所述任务控制块来跟踪正被处理单元改变的项目。所述方法还包括步骤:在规定的时间,检查该任务控制块,以便识别正被处理单元改变的项目,并且检查所述识别出的项目的状态,以便确定这些状态是否正确。本发明的优选实施例在出现错误时(在可能的地方)检测到错误,并且在错误引发后续问题之前,使用允许简单的和定期的一致性检查的基础设施(例如,在指定的代码点处),其中该一致性检查对所述错误进行检测。
Description
相关申请的交叉引用
此申请涉及一并待审的、与本申请一起提交的题目为“MethodAnd System To Execute Recovery In Non -HomogeneousMultiprocessor Environments”的第US 11/223,725号(代理人档案号POU920050087US1)申请,与本申请一起提交的题目为“Method AndSystem For State Tracking And Recovery In MultiprocessingComputing Systems”的第US 11/223,733号(代理人档案号POU920050096US1)的申请,以及与本申请一起提交的题目为“MethodAnd System To Recover From Control Block Hangs In AHeterogeneous Multiprocessor Environment”的第US 11/223,877号(代理人档案号POU920050097US1)的申请。将上述申请的公开内容全部引入在此,以供参考。
技术领域
本发明总体上涉及计算机系统,并且尤其涉及通过使用状态跟踪来检测计算机系统中的错误。甚至更具体地说,本发明涉及非常适合于检测多处理计算机系统中的这种错误的方法和系统。
背景技术
多处理器计算机系统在现代计算方面变得日益重要,这是因为,将多个处理器结合,增加了处理带宽,并且通常改善了吞吐量、可靠性和适用性。多处理计算系统使用多个处理元件来执行各个任务,其中多个处理元件可以包括多个在网络中链接的单独处理器,或者多个在协同环境中同时操作的软件处理或者线程。
许多早先的多处理器系统包括多个单独的计算机系统(其被称为分区系统)。近年来,多处理器系统已经由一个或多个计算机系统形成,所述一个或多个计算机系统被逻辑上分区,以便作为多个独立的计算机系统运行。例如,具有8个处理器的单个系统可以被配置为把8个处理器(或者一个或多个处理器的多个组)中的每一个视为用于处理目的的单独系统。这些“虚拟”系统中的每一个具有其自己的关于操作系统的副本,然后可以被独立地分配任务,或者可以作为处理集群一同操作,这样做既提供了高速处理又改进了可靠性。
国际商业机器公司的zSeries服务器在多处理计算机系统中已经实现了广泛的商业成功。这些服务器提供了在“任务关键环境(missioncritical environments)”中所要求的性能、可扩展性和可靠性。这些服务器运行公司的应用,诸如企业资源规划(ERP)、商业智能(BI)和高性能电子商务基础设施。这些系统的正确操作是机构运营的关键,因此,最重要的是,它们有效地操作并且尽可能地无错误,并且进行快速问题分析和从系统错误中恢复也极为重要。
IBM zSeries服务器生产线提供了企业级的计算解决方案,其对于维护很高级别的系统可用性非常重要,并且由此对于从系统错误中恢复非常重要。所述zSeries信道子系统(Channel Subsystem,CSS)已经成熟到足以支持大型I/O配置,但是为此,当系统遭遇到错误时,需要增加时间来恢复I/O子系统。
这种CSS经由内部数据结构或者控制块来维护系统的I/O配置状态的逻辑表示。这些控制块用来包含所述CSS执行的各种操作和任务的状态信息,并且还用来在多处理(Multi-Processing,MP)环境下使处理单元(Processing Unit,PU)的操作串行化。
诸如IBM zSeries服务器之类的大型多处理器计算机系统在数据结构(控制块)中维护大的状态空间。此系统中的每一任务修改这个状态的一(小)部分。如果因硬件故障或者代码程序错误而导致任务对该状态进行了错误的或者不完全的修改,那么这可能在长短不确定的时间期间都不会被注意到(直到由后续的任务再次检查该状态为止)。此状态空间项目可能影响系统(设备等)的单个或者多个部件。
在过去,没有办法迅速地确定大的状态空间中的哪些部分目前是有效的(在正被修改的过程中)。当出现错误时,整个状态空间必须被假定为是不一致的。因此,必须扫描该整个状态空间的活动,以便使其回到一致的状态。
发明内容
本发明的一个目的在于:增强并且加速计算机系统中的恢复动作。
本发明的另一目的在于:在错误引发后续问题之前,利用计算机系统中的允许简单的和定期的一致性检查的基础设施来检测错误。
本发明的进一步的目的在于:提供一种特别适合于在多处理器计算系统中使用的、用于通过使用状态跟踪来检测错误的方法和系统。
这些以及其它目的是利用一种用于检测计算机系统中的错误的方法和系统来实现的,所述计算机系统包括用于执行任务以便改变项目的处理单元。所述方法包括如下步骤:向处理单元分配任务控制块,并且使用所述任务控制块来跟踪正被处理单元改变的项目。所述方法还包括如下步骤:在规定的时间,检查所述任务控制块,以便识别在所述规定的时间正被处理单元改变的项目,并且检查所述识别出的项目的状态,以便确定所述识别出的项目的所述状态是否正确。
下文详细描述的本发明的优选实施例,在出现错误时(在可能的地方),检测错误,并且在所述错误引发后续问题之前,使用允许简单的和定期的一致性检查的基础设施(例如,在指定的代码点处),其中该一致性检查对所述错误进行检测。
通过考虑参考附图给出的下列详细说明,本发明的其它益处及优点将变得明显,其中所述附图规定并且示出了本发明的优选实施例。
附图说明
图1举例说明了可与本发明一起使用的多处理计算系统。
图2示出了可以在本发明中使用的任务控制块。
图3示出了用于控制块的锁定字(lock word)。
具体实施方式
图1举例说明了多处理器计算机系统100,其通常包括多个主计算机110、112、114(也可以将它们称为“主机”)。主机110、112、114与主机链路116相互连接,所述主机链路116可以包括例如耦合链路、内部耦合信道、集成集群总线或者其它适当的链路。在替换实施例中,可以使用一个、两个、四个或更多主机,而不是像在所示实施例中那样使用三个主机110、112、114。系统100还包括定时器118以及耦合设备120。
每一主机110、112、114本身是一个多处理器系统。每一主机110、112、114可以采用相同(或不同)类型的数字处理单元来实现。在一个具体的例子中,主机110、112、114均包括IBM zSeries ParallelSysplex服务器,诸如zSeries 900,其运行有一个或多个z操作系统(z/OS)。适当的数字处理单元的另一例子是运行OS/390的IBMS/390服务器。所述主机110、112、114运行一个或多个应用程序,所述应用程序用于生成数据对象,所述应用程序被存储在主机110、112、114中的一个或多个的外部或内部。所述数据对象可以包括新的数据或者对旧数据的更新。所述主机应用程序可以包括例如IMS以及DB2。所述主机110、112、114运行包括相应的I/O例行程序115a、115b、115c的软件。应注意的是,其它类型的主机也可以用在系统100中。具体来讲,主机可以包括任何适当的数字处理单元,例如大型计算机、计算机工作站、服务器计算机、个人计算机、超级计算机、微处理器或者其它适当的机器。
所述系统100还包括定时器118,其耦合至主机110、112、114中的每一个,以便使主机110、112、114的时序同步。在一个例子中,所述定时器118是IBM Sysplex定时器。作为选择,单独的定时器118可以被省略,在这种情况下,使用主机110、112、114之一中的定时器来使主机110、112、114的时序同步。
耦合设备120通过相应的连接器122、124、126耦合至每个主机110、112、114。所述连接器122、124、126可以是,例如系统间耦合(Inter System Coupling,ISC)、或者是内部耦合总线(InternalCoupling Bus,ICB)连接器。所述耦合设备120包括由主机110、112、114共享的高速缓冲存储设备128(“高速缓存”),并且还包括处理器130。在一个具体的例子中,所述耦合设备120是IBM z900 100型耦合设备。其它适当的耦合设备的例子包括IBM的9674 C04以及C05型以及IBM的9672 R06型。作为选择,所述耦合设备120可以被包括在诸如主机110、112、114之一的服务器中。
作为一个例子,用于这个替换实施例的某些适当的服务器包括IBM z900和S/390服务器,其具有内部耦合设备或者逻辑分区功能作为耦合设备。作为选择,所述耦合设备120可以在任何其它适当的服务器中实现。作为一个例子,所述耦合设备120中的处理器130可以运行z/OS。作为选择,可以使用任何适当的共享存储器,而不是所述耦合设备120。高速缓存128是主机级的高速缓存,这是因为它可由主机110、112、114访问。所述高速缓存128在主机110、112、114的控制之下,并且如果期望的话,甚至可以将其包括在主机之一中。
如上所述,诸如系统100之类的大型多处理器计算机系统在数据结构(控制块)中维护大的状态空间。此系统中的每一任务修改此状态的一(小)部分。如果因硬件故障或者代码程序错误而导致任务对该状态进行了错误的或者不完全的修改,那么这可能在长短不确定的时间期间都不会被注意到(直到由后续任务再次检查该状态为止)。此状态空间项可以影响系统(设备等)的单个或者多个部件。
在过去,没有办法迅速地确定大的状态空间中的哪些部分目前是有效的(在正被修改的过程中)。当出现错误时,整个状态空间必须被假定为是不一致的。因此,必须扫描该整个状态空间的活动,以便使其回到一致的状态。
本发明通过增强并加速大型服务器中的恢复动作来解决此问题。
本发明是通过如下步骤来执行此操作的:
1)当出现错误时,检测错误(在可能的地点),并且
2)在错误引发后续问题之前,使用允许简单的和定期的一致性检查的基础设施(例如,在指定的代码点处),其中该一致性检查对所述错误进行检测。
本发明使用包括任务控制块(TCB)和用于该控制块的锁定字的数据结构。图2和3中示出了这些数据结构。
一般说来,任务控制块(TCB)用来记录哪些I/O控制块由每一个PU使用。优选为,向每一个PU分配2个TCB,以便支持PU的双操作模式,即i390模式和millicode(毫码)模式。在I/O控制块中定义了锁定字(Lock Word)结构,以便包括一个回到TCB中的索引来便于对TCB条目进行管理。还在I/O控制块中定义了锁定字结构,以便包括唯一的例行程序识别码来跟踪控制块的任务使用。此处所述的基础设施优选为用于主线(mainline)I/O代码以及I/O子系统恢复代码。
更具体地说,所述TCB将包含与如下内容有关的信息:
√在执行I/O任务的同时,由PU使用的控制块。
√PU任务状态轨迹(footprint)信息。
√如果出现错误,那么PU将在TCB中存储错误类型、错误代码以及扩展的错误信息。
向在PU上运行的每一任务分配TCB。例如,在IBM zSeries服务器上,所述PU可以在两种模式、即i390模式或者Millicode模式下执行,由此,当采用这种服务器来实现本发明时,最好给每一PU分配2个TCB。对于i390模式和Millicode模式为每PU定义唯一的TCB,允许出现更大的任务交错(interleaving),当处理器在通过使所使用的资源保持独立而处理各功能的同时切换模式时,会出现这种任务交错。图2中示出了此结构。
关键的TCB字段定义
1.TCB Code(TCB代码)字段202:用于标识TCB控制块类型的唯一的静态十六进制值。
2.PU#字段204:拥有TCB的物理PU数目。
3.Mode(模式)字段206:Millicode或者i390模式的标识符。
4.Control Block Slot Arrays(控制块槽阵列):包含如下内容的三个16元阵列:
√Control Block Mask(CBM)Array(控制块屏蔽码阵列)212:
表明控制块被锁定或者在正被锁定的过程中。
√Control Block Code(CBC)Array(控制块代码阵列)214:
包含被锁定或者正被锁定的控制块的控制块代码。
√Control Block Address(CBA)Array(控制块地址阵列)216:
包含被锁定或者正被锁定的控制块的控制块地址。
5.Task Footprint(任务轨迹)字段220:在PU上执行的当前任务步骤的指示符。
6.Error Code(错误码)字段222:由失败的任务存储的唯一的错误数据。
7.Extended Error Information(扩展的错误信息)字段224:由失败的任务存储的附加数据,用于帮助恢复或问题调试。
I/O控制块锁定控制
图3举例说明了I/O控制块的结构。所有I/O控制块均定义了字0,以包含控制块锁定数据。锁定值是16位编码值,位0-7表示锁定元件(PU类型),位8-15包含PU数目。本发明现在定义了位16-31,以包含扩展的锁定信息数据,并且将其用于包含唯一锁定例行程序id或者TCB索引数据。
依照本发明,所述任务控制块在系统100的操作中使用,以便增强并加速恢复动作。具体来讲,在系统100的操作中,任务修改非常有限数量的状态空间,此操作在TCB中被跟踪。当状态空间中的项目将要被修改时,将其锁定。此时,采取如下动作:
1.确认与锁定协议的一致性。例如,存在一种严格的优先规则,在该规则中某一类型的顺序(order)项目将被锁定。如果违反此规则,那么很可能出现死锁(假定元件1锁定A,元件2锁定B。假定,元件1现在试图锁定B,并且元件2试图锁定A。那么元件1和2现在将被死锁)。
2.为便于在解锁(unlock)时间的查找,在锁定的项目中,在保存与此项目有关的锁定信息的地方记住TCB槽。此外,还更新TCB中的使用向量。
3.如果所有TCB槽都已经被使用了,那么拒绝锁定(即,采取恢复动作)。在该情况下,任务被带走,这可能会阻塞系统的主要部分。将TCB的大小设计为在常规的系统活动期间决不会发生这种情况。
当已经更新了项目时,将其解锁。此时,采取如下动作:
1.确保所述项目之前实际上真被锁定了(即,锁定类型位0-7是非零的)。如果不是这样的情况,那么不采取恢复动作。
2.确保所述项目被列在所期待的槽的TCB上。
3.如果不是这样的情况(这可能在代表另一[失败的]元件解锁项目的恢复情况中发生),那么试图从拥有的元件(另一处理器)的TCB中除去所述项目。
4.把所述项目从TCB的使用向量中除去。
5.如果该项目无法在另一TCB中找到,那么采取恢复动作。
在任务常规结束时,对状态空间的所有修改都完成了。所述状态空间是一致的,并且所述TCB为空,即,它表明在所述状态空间上没有活动。在任务结束之后并且在启动下一任务之前,任务调度器校验TCB使用向量实际上为空。非零的使用向量意味着,最后有一个项目被锁定,并且必须通过恢复动作来维护。状态跟踪允许采用即时的恢复动作。从前,所述系统往往非常迟地遇到锁定的项目(这是非常难以理解的),以便固定在代码中并且固定在运行的系统中,非常难以从中进行恢复。
在任何给定时间,当任务失败(因硬件错误或者代码程序错误)时,TCB示出修改过程中的全部项目。现在,恢复过程可以仅仅清理这些项目并且使系统回到一致的状态。
显然,虽然此处公开的本发明很适于满足上述的目的,但是应该理解的是,本领域技术人员可以设计出很多修改和实施例,并且意图使所附权利要求书涵盖所有落入本发明的真实精神和范围内的这种修改和实施例。
Claims (13)
1.一种用于检测计算机系统中的错误的方法,所述计算机系统包括用于执行任务以便改变项目的处理单元,所述方法包括如下步骤:
向处理单元分配任务控制块;
使用所述任务控制块来跟踪正被所述处理单元改变的项目;
在规定的时间,检查所述任务控制块,以便识别在所述规定的时间正被处理单元改变的项目;并且
检查所述识别出的项目的状态,以便确定所述识别出的项目的所述状态是否正确。
2.如权利要求1所述的方法,其中使用所述任务控制块的步骤包括:当调用所述处理单元以便改变项目时,在所述任务控制块中列出正被处理单元改变的每一项目的步骤。
3.如权利要求2所述的方法,其中,所述任务控制块包括一组槽,并且所述列出步骤包括在所述槽中的相应一个槽中列出所述项目中的每一个的步骤。
4.如权利要求3所述的方法,还包括如下步骤:
试图为所述处理单元锁定另一个项目;
检查所述任务控制块,以便确定是否有任何一个所述槽是开启的;并且
如果所述槽都不是开启的,那么拒绝试图锁定所述另一个项目的尝试。
5.如权利要求1所述的方法,其中检查所述任务控制块的步骤包括如下步骤:
在所述规定的时间调用恢复处理;并且
使用所述恢复处理来检查所述任务控制块,以便确定在所述规定的时间是否有任何项目被列出在其中。
6.如权利要求1所述的方法,其中,所述规定的时间是每当任务之一依照规定的方式失败时的时间。
7.一种计算机系统中的错误检测系统,所述计算机系统包括用于执行任务以便改变项目的处理单元,所述错误检测系统包括:
分配给处理单元的任务控制块;
用于使用所述任务控制块来跟踪正被所述处理单元改变的项目的装置;
用于在规定的时间检查所述任务控制块以便识别在所述规定的时间正被处理单元改变的项目的装置;以及
用于检查所述识别出的项目的状态、以便确定所述识别出的项目的所述状态是否正确的装置。
8.如权利要求7所述的错误检测系统,其中用于使用所述任务控制块的装置包括:用于当调用所述处理单元以便改变项目时、在所述任务控制块中列出正被处理单元改变的每一项目的装置。
9.如权利要求8所述的错误检测系统,其中所述任务控制块包括一组槽,并且所述用于列出的装置包括:用于在所述槽中的相应一个槽中列出所述项目中的每一个的装置。
10.如权利要求9所述的错误检测系统,还包括:
用于试图为所述处理单元锁定另一个项目的装置;
用于检查所述任务控制块以便确定是否有任何一个所述槽开启的装置;以及
用于当所述槽都不是开启的时、拒绝试图锁定所述另一个项目的尝试的装置。
11.如权利要求7所述的错误检测系统,其中用于检查所述任务控制块的装置包括:
错误恢复处理;
用于在所述规定的时间调用所述错误恢复处理的装置;以及
用于使用所述错误恢复处理来检查所述任务控制块以便确定在所述规定的时间是否有任何项目被列出在其中的装置。
12.如权利要求7所述的错误检测系统,其中所述规定的时间是每当任务之一依照规定的方式失败时的时间。
13.一种可被机器读取的程序存储设备,有形地包含可由机器执行以便执行如权利要求1-6中任一项所述的用于检测计算机系统中的错误的方法步骤的指令程序,其中所述计算机系统包括处理单元,其用于执行任务以便改变项目。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/223,701 | 2005-09-09 | ||
US11/223,701 US7457985B2 (en) | 2005-09-09 | 2005-09-09 | Method to detect errors in computer systems by using state tracking |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1928837A true CN1928837A (zh) | 2007-03-14 |
CN100437511C CN100437511C (zh) | 2008-11-26 |
Family
ID=37856489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101062458A Active CN100437511C (zh) | 2005-09-09 | 2006-07-07 | 使用状态跟踪来检测计算机系统中的错误的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (2) | US7457985B2 (zh) |
CN (1) | CN100437511C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7457985B2 (en) * | 2005-09-09 | 2008-11-25 | International Business Machines Corporation | Method to detect errors in computer systems by using state tracking |
US7979751B2 (en) * | 2008-12-15 | 2011-07-12 | International Business Machines Corporation | Managing by one process state of another process to facilitate handling of error conditions |
KR101975027B1 (ko) | 2012-05-04 | 2019-05-03 | 삼성전자주식회사 | 시스템 온 칩, 이의 동작 방법, 이를 포함하는 장치들 |
US10042694B2 (en) | 2016-09-06 | 2018-08-07 | International Business Machines Corporation | Control block validator |
US11086686B2 (en) * | 2018-09-28 | 2021-08-10 | International Business Machines Corporation | Dynamic logical partition provisioning |
CN111782472B (zh) * | 2020-06-30 | 2022-04-26 | 平安科技(深圳)有限公司 | 系统异常检测方法、装置、设备及存储介质 |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4742447A (en) * | 1986-01-16 | 1988-05-03 | International Business Machines Corporation | Method to control I/O accesses in a multi-tasking virtual memory virtual machine type data processing system |
US5761413A (en) * | 1987-12-22 | 1998-06-02 | Sun Microsystems, Inc. | Fault containment system for multiprocessor with shared memory |
DE68925064T2 (de) | 1988-05-26 | 1996-08-08 | Hitachi Ltd | Taskausführungssteuerverfahren für ein Multiprozessorsystem mit Post/Warte-Prozedur |
US5274809A (en) * | 1988-05-26 | 1993-12-28 | Hitachi, Ltd. | Task execution control method for a multiprocessor system with enhanced post/wait procedure |
US5590281A (en) * | 1991-10-28 | 1996-12-31 | The United States Of Americas As Represented By The Secretary Of The Navy | Asynchronous bidirectional application program processes interface for a distributed heterogeneous multiprocessor system |
US5313584A (en) * | 1991-11-25 | 1994-05-17 | Unisys Corporation | Multiple I/O processor system |
JPH06250916A (ja) * | 1993-02-26 | 1994-09-09 | Fujitsu Ltd | 共有メモリの排他制御方法 |
WO1996033459A1 (en) * | 1995-04-18 | 1996-10-24 | International Business Machines Corporation | High available error self-recovering shared cache for multiprocessor systems |
WO1997004385A1 (de) * | 1995-07-21 | 1997-02-06 | Siemens Aktiengesellschaft | Rechnersystem |
US5768572A (en) * | 1996-02-05 | 1998-06-16 | International Business Machines Corporation | Timer state control optimized for frequent cancel and reset operations |
JP3120033B2 (ja) * | 1996-03-19 | 2000-12-25 | 株式会社東芝 | 分散メモリ型マルチプロセッサシステム及び故障回復方法 |
US5842208A (en) * | 1997-04-09 | 1998-11-24 | International Business Machines Corporation | High performance recover/build index system by unloading database files in parallel |
US6199179B1 (en) * | 1998-06-10 | 2001-03-06 | Compaq Computer Corporation | Method and apparatus for failure recovery in a multi-processor computer system |
US6748438B2 (en) * | 1997-11-17 | 2004-06-08 | International Business Machines Corporation | Method and apparatus for accessing shared resources with asymmetric safety in a multiprocessing system |
US6182238B1 (en) * | 1998-05-14 | 2001-01-30 | Intel Corporation | Fault tolerant task dispatching |
US6389447B1 (en) * | 1998-10-21 | 2002-05-14 | Ericsson Inc. | System and method for providing adaptive task management in a multi-application device |
US6675175B2 (en) * | 1999-02-19 | 2004-01-06 | International Business Machines Corporation | Method and system for sharing catalogs in a multiprocessing system utilizing a shared processor |
US6594785B1 (en) * | 2000-04-28 | 2003-07-15 | Unisys Corporation | System and method for fault handling and recovery in a multi-processing system having hardware resources shared between multiple partitions |
US6823472B1 (en) * | 2000-05-11 | 2004-11-23 | Lsi Logic Corporation | Shared resource manager for multiprocessor computer system |
EP1176507A3 (en) * | 2000-07-24 | 2005-08-17 | Sony Corporation | Information processing method, inter-task communication method, and computer-executable program for the same |
EP1182571B1 (en) * | 2000-08-21 | 2011-01-26 | Texas Instruments Incorporated | TLB operations based on shared bit |
EP1215577B1 (en) * | 2000-08-21 | 2012-02-22 | Texas Instruments Incorporated | Fault management and recovery based on task-ID |
EP1182569B8 (en) * | 2000-08-21 | 2011-07-06 | Texas Instruments Incorporated | TLB lock and unlock operation |
US6834385B2 (en) * | 2001-01-04 | 2004-12-21 | International Business Machines Corporation | System and method for utilizing dispatch queues in a multiprocessor data processing system |
US7305421B2 (en) * | 2001-07-16 | 2007-12-04 | Sap Ag | Parallelized redo-only logging and recovery for highly available main memory database systems |
WO2003045035A2 (en) | 2001-11-15 | 2003-05-30 | Unisys Corporation | Dialog recovery and acknowledgement accumulation in a multi-computer system |
US6973544B2 (en) * | 2002-01-09 | 2005-12-06 | International Business Machines Corporation | Method and apparatus of using global snooping to provide cache coherence to distributed computer nodes in a single coherent system |
US6826656B2 (en) * | 2002-01-28 | 2004-11-30 | International Business Machines Corporation | Reducing power in a snooping cache based multiprocessor environment |
US6845470B2 (en) * | 2002-02-27 | 2005-01-18 | International Business Machines Corporation | Method and system to identify a memory corruption source within a multiprocessor system |
US6886064B2 (en) * | 2002-03-28 | 2005-04-26 | International Business Machines Corporation | Computer system serialization control method involving unlocking global lock of one partition, after completion of machine check analysis regardless of state of other partition locks |
US6842825B2 (en) * | 2002-08-07 | 2005-01-11 | International Business Machines Corporation | Adjusting timestamps to preserve update timing information for cached data objects |
US7502447B2 (en) * | 2003-11-25 | 2009-03-10 | Alcatel Lucent | Call failure recording |
US7231502B2 (en) * | 2004-02-04 | 2007-06-12 | Falcon Stor Software, Inc. | Method and system for storing data |
US7493617B2 (en) * | 2004-03-05 | 2009-02-17 | International Business Machines Corporation | Method of maintaining task sequence within a task domain across error recovery |
US7457985B2 (en) * | 2005-09-09 | 2008-11-25 | International Business Machines Corporation | Method to detect errors in computer systems by using state tracking |
US7490272B2 (en) * | 2006-06-07 | 2009-02-10 | Oxlo Systems | Method for validating the proper operation of a transactional management system |
US7490327B1 (en) * | 2008-05-15 | 2009-02-10 | International Business Machines Corporation | System and method for programmatic distributed transaction commit prioritization mechanism |
-
2005
- 2005-09-09 US US11/223,701 patent/US7457985B2/en not_active Expired - Fee Related
-
2006
- 2006-07-07 CN CNB2006101062458A patent/CN100437511C/zh active Active
-
2008
- 2008-09-09 US US12/206,996 patent/US7752497B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US7457985B2 (en) | 2008-11-25 |
US20070061281A1 (en) | 2007-03-15 |
US7752497B2 (en) | 2010-07-06 |
CN100437511C (zh) | 2008-11-26 |
US20090006892A1 (en) | 2009-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8166146B2 (en) | Providing improved message handling performance in computer systems utilizing shared network devices | |
CN1181435C (zh) | 通过资源恢复得到系统最优可用性的方法和系统 | |
US9135126B2 (en) | Multi-core re-initialization failure control system | |
US8145723B2 (en) | Complex remote update programming idiom accelerator | |
US7818743B2 (en) | Logging lock data | |
US7870443B2 (en) | Method to isolate crash of an embedded multi-threaded application to a shared library call without core dump files or debugger | |
US20080172679A1 (en) | Managing Client-Server Requests/Responses for Failover Memory Managment in High-Availability Systems | |
US20150206272A1 (en) | Selectively killing trapped multi-process service clients sharing the same hardware context | |
EP3138013B1 (en) | System and method for providing distributed transaction lock in transactional middleware machine environment | |
CN1716186A (zh) | 使用睡眠-唤醒机制的比较和交换操作 | |
US20130019083A1 (en) | Redundant Transactional Memory | |
CN100437511C (zh) | 使用状态跟踪来检测计算机系统中的错误的方法和系统 | |
CN104412233A (zh) | 流水线调度中混叠寄存器的分配 | |
Bland et al. | Extending the scope of the Checkpoint‐on‐Failure protocol for forward recovery in standard MPI | |
US7996585B2 (en) | Method and system for state tracking and recovery in multiprocessing computing systems | |
KR102604740B1 (ko) | 병렬 컴퓨팅을 위한 키-밸류 기반 시스템 및 병렬화된 애플리케이션을 동작하는 방법 | |
US7765429B2 (en) | Method and system to execute recovery in non-homogenous multi processor environments | |
US20060080514A1 (en) | Managing shared memory | |
US20100318751A1 (en) | Multiple error management in a multiprocessor computer system | |
Ong et al. | Kernel-level single system image for petascale computing | |
CN114461409A (zh) | 一种互斥信号量异常阻塞辅助分析方法、系统及存储介质 | |
US8365008B2 (en) | Providing unsolicited global disconnect requests to users of storage | |
Freiburghouse | Making processing fail-safe | |
Dhoked | Synchronization and Fault Tolerance Techniques in Concurrent Shared Memory Systems | |
US20130179731A1 (en) | Recovering from a thread hang |
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 |